@gem-sdk/swiper 0.0.7

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 (321) hide show
  1. package/LICENSE +20 -0
  2. package/README.md +11 -0
  3. package/modules/a11y-element.css +9 -0
  4. package/modules/a11y-element.min.css +1 -0
  5. package/modules/a11y.css +9 -0
  6. package/modules/a11y.less +9 -0
  7. package/modules/a11y.min.css +1 -0
  8. package/modules/a11y.min.mjs +2 -0
  9. package/modules/a11y.min.mjs.map +1 -0
  10. package/modules/a11y.mjs +377 -0
  11. package/modules/a11y.scss +9 -0
  12. package/modules/autoplay-element.css +0 -0
  13. package/modules/autoplay-element.min.css +0 -0
  14. package/modules/autoplay.css +0 -0
  15. package/modules/autoplay.less +0 -0
  16. package/modules/autoplay.min.css +0 -0
  17. package/modules/autoplay.min.mjs +2 -0
  18. package/modules/autoplay.min.mjs.map +1 -0
  19. package/modules/autoplay.mjs +304 -0
  20. package/modules/autoplay.scss +0 -0
  21. package/modules/controller-element.css +0 -0
  22. package/modules/controller-element.min.css +0 -0
  23. package/modules/controller.css +0 -0
  24. package/modules/controller.less +0 -0
  25. package/modules/controller.min.css +0 -0
  26. package/modules/controller.min.mjs +2 -0
  27. package/modules/controller.min.mjs.map +1 -0
  28. package/modules/controller.mjs +191 -0
  29. package/modules/controller.scss +0 -0
  30. package/modules/effect-cards-element.css +9 -0
  31. package/modules/effect-cards-element.min.css +1 -0
  32. package/modules/effect-cards.css +9 -0
  33. package/modules/effect-cards.less +10 -0
  34. package/modules/effect-cards.min.css +1 -0
  35. package/modules/effect-cards.min.mjs +2 -0
  36. package/modules/effect-cards.min.mjs.map +1 -0
  37. package/modules/effect-cards.mjs +128 -0
  38. package/modules/effect-cards.scss +10 -0
  39. package/modules/effect-coverflow-element.css +0 -0
  40. package/modules/effect-coverflow-element.min.css +0 -0
  41. package/modules/effect-coverflow.css +0 -0
  42. package/modules/effect-coverflow.less +2 -0
  43. package/modules/effect-coverflow.min.css +0 -0
  44. package/modules/effect-coverflow.min.mjs +2 -0
  45. package/modules/effect-coverflow.min.mjs.map +1 -0
  46. package/modules/effect-coverflow.mjs +104 -0
  47. package/modules/effect-coverflow.scss +2 -0
  48. package/modules/effect-creative-element.css +6 -0
  49. package/modules/effect-creative-element.min.css +1 -0
  50. package/modules/effect-creative.css +6 -0
  51. package/modules/effect-creative.less +7 -0
  52. package/modules/effect-creative.min.css +1 -0
  53. package/modules/effect-creative.min.mjs +2 -0
  54. package/modules/effect-creative.min.mjs.map +1 -0
  55. package/modules/effect-creative.mjs +146 -0
  56. package/modules/effect-creative.scss +7 -0
  57. package/modules/effect-cube-element.css +53 -0
  58. package/modules/effect-cube-element.min.css +1 -0
  59. package/modules/effect-cube.css +62 -0
  60. package/modules/effect-cube.less +71 -0
  61. package/modules/effect-cube.min.css +1 -0
  62. package/modules/effect-cube.min.mjs +2 -0
  63. package/modules/effect-cube.min.mjs.map +1 -0
  64. package/modules/effect-cube.mjs +174 -0
  65. package/modules/effect-cube.scss +71 -0
  66. package/modules/effect-fade-element.css +16 -0
  67. package/modules/effect-fade-element.min.css +1 -0
  68. package/modules/effect-fade.css +16 -0
  69. package/modules/effect-fade.less +20 -0
  70. package/modules/effect-fade.min.css +1 -0
  71. package/modules/effect-fade.min.mjs +2 -0
  72. package/modules/effect-fade.min.mjs.map +1 -0
  73. package/modules/effect-fade.mjs +66 -0
  74. package/modules/effect-fade.scss +20 -0
  75. package/modules/effect-flip-element.css +17 -0
  76. package/modules/effect-flip-element.min.css +1 -0
  77. package/modules/effect-flip.css +26 -0
  78. package/modules/effect-flip.less +30 -0
  79. package/modules/effect-flip.min.css +1 -0
  80. package/modules/effect-flip.min.mjs +2 -0
  81. package/modules/effect-flip.min.mjs.map +1 -0
  82. package/modules/effect-flip.mjs +111 -0
  83. package/modules/effect-flip.scss +30 -0
  84. package/modules/free-mode-element.css +4 -0
  85. package/modules/free-mode-element.min.css +1 -0
  86. package/modules/free-mode.css +4 -0
  87. package/modules/free-mode.less +4 -0
  88. package/modules/free-mode.min.css +1 -0
  89. package/modules/free-mode.min.mjs +2 -0
  90. package/modules/free-mode.min.mjs.map +1 -0
  91. package/modules/free-mode.mjs +237 -0
  92. package/modules/free-mode.scss +4 -0
  93. package/modules/grid-element.css +7 -0
  94. package/modules/grid-element.min.css +1 -0
  95. package/modules/grid.css +7 -0
  96. package/modules/grid.less +7 -0
  97. package/modules/grid.min.css +1 -0
  98. package/modules/grid.min.mjs +2 -0
  99. package/modules/grid.min.mjs.map +1 -0
  100. package/modules/grid.mjs +155 -0
  101. package/modules/grid.scss +7 -0
  102. package/modules/hash-navigation-element.css +0 -0
  103. package/modules/hash-navigation-element.min.css +0 -0
  104. package/modules/hash-navigation.css +0 -0
  105. package/modules/hash-navigation.less +2 -0
  106. package/modules/hash-navigation.min.css +0 -0
  107. package/modules/hash-navigation.min.mjs +2 -0
  108. package/modules/hash-navigation.min.mjs.map +1 -0
  109. package/modules/hash-navigation.mjs +93 -0
  110. package/modules/hash-navigation.scss +0 -0
  111. package/modules/history-element.css +0 -0
  112. package/modules/history-element.min.css +0 -0
  113. package/modules/history.css +0 -0
  114. package/modules/history.less +0 -0
  115. package/modules/history.min.css +0 -0
  116. package/modules/history.min.mjs +2 -0
  117. package/modules/history.min.mjs.map +1 -0
  118. package/modules/history.mjs +142 -0
  119. package/modules/history.scss +0 -0
  120. package/modules/index.min.mjs +2 -0
  121. package/modules/index.min.mjs.map +1 -0
  122. package/modules/index.mjs +23 -0
  123. package/modules/keyboard-element.css +0 -0
  124. package/modules/keyboard-element.min.css +0 -0
  125. package/modules/keyboard.css +0 -0
  126. package/modules/keyboard.less +0 -0
  127. package/modules/keyboard.min.css +0 -0
  128. package/modules/keyboard.min.mjs +2 -0
  129. package/modules/keyboard.min.mjs.map +1 -0
  130. package/modules/keyboard.mjs +117 -0
  131. package/modules/keyboard.scss +0 -0
  132. package/modules/manipulation-element.css +0 -0
  133. package/modules/manipulation-element.min.css +0 -0
  134. package/modules/manipulation.css +0 -0
  135. package/modules/manipulation.less +0 -0
  136. package/modules/manipulation.min.css +0 -0
  137. package/modules/manipulation.min.mjs +2 -0
  138. package/modules/manipulation.min.mjs.map +1 -0
  139. package/modules/manipulation.mjs +193 -0
  140. package/modules/manipulation.scss +0 -0
  141. package/modules/mousewheel-element.css +0 -0
  142. package/modules/mousewheel-element.min.css +0 -0
  143. package/modules/mousewheel.css +0 -0
  144. package/modules/mousewheel.less +0 -0
  145. package/modules/mousewheel.min.css +0 -0
  146. package/modules/mousewheel.min.mjs +2 -0
  147. package/modules/mousewheel.min.mjs.map +1 -0
  148. package/modules/mousewheel.mjs +395 -0
  149. package/modules/mousewheel.scss +0 -0
  150. package/modules/navigation-element.css +63 -0
  151. package/modules/navigation-element.min.css +1 -0
  152. package/modules/navigation.css +86 -0
  153. package/modules/navigation.less +86 -0
  154. package/modules/navigation.min.css +1 -0
  155. package/modules/navigation.min.mjs +2 -0
  156. package/modules/navigation.min.mjs.map +1 -0
  157. package/modules/navigation.mjs +200 -0
  158. package/modules/navigation.scss +87 -0
  159. package/modules/pagination-element.css +184 -0
  160. package/modules/pagination-element.min.css +1 -0
  161. package/modules/pagination.css +184 -0
  162. package/modules/pagination.less +187 -0
  163. package/modules/pagination.min.css +1 -0
  164. package/modules/pagination.min.mjs +2 -0
  165. package/modules/pagination.min.mjs.map +1 -0
  166. package/modules/pagination.mjs +467 -0
  167. package/modules/pagination.scss +188 -0
  168. package/modules/parallax-element.css +0 -0
  169. package/modules/parallax-element.min.css +0 -0
  170. package/modules/parallax.css +0 -0
  171. package/modules/parallax.less +0 -0
  172. package/modules/parallax.min.css +0 -0
  173. package/modules/parallax.min.mjs +2 -0
  174. package/modules/parallax.min.mjs.map +1 -0
  175. package/modules/parallax.mjs +124 -0
  176. package/modules/parallax.scss +0 -0
  177. package/modules/scrollbar-element.css +58 -0
  178. package/modules/scrollbar-element.min.css +1 -0
  179. package/modules/scrollbar.css +58 -0
  180. package/modules/scrollbar.less +59 -0
  181. package/modules/scrollbar.min.css +1 -0
  182. package/modules/scrollbar.min.mjs +2 -0
  183. package/modules/scrollbar.min.mjs.map +1 -0
  184. package/modules/scrollbar.mjs +366 -0
  185. package/modules/scrollbar.scss +61 -0
  186. package/modules/thumbs-element.css +0 -0
  187. package/modules/thumbs-element.min.css +0 -0
  188. package/modules/thumbs.css +0 -0
  189. package/modules/thumbs.less +5 -0
  190. package/modules/thumbs.min.css +0 -0
  191. package/modules/thumbs.min.mjs +2 -0
  192. package/modules/thumbs.min.mjs.map +1 -0
  193. package/modules/thumbs.mjs +197 -0
  194. package/modules/thumbs.scss +5 -0
  195. package/modules/virtual-element.css +19 -0
  196. package/modules/virtual-element.min.css +1 -0
  197. package/modules/virtual.css +19 -0
  198. package/modules/virtual.less +26 -0
  199. package/modules/virtual.min.css +1 -0
  200. package/modules/virtual.min.mjs +2 -0
  201. package/modules/virtual.min.mjs.map +1 -0
  202. package/modules/virtual.mjs +349 -0
  203. package/modules/virtual.scss +26 -0
  204. package/modules/zoom-element.css +5 -0
  205. package/modules/zoom-element.min.css +1 -0
  206. package/modules/zoom.css +21 -0
  207. package/modules/zoom.less +23 -0
  208. package/modules/zoom.min.css +1 -0
  209. package/modules/zoom.min.mjs +2 -0
  210. package/modules/zoom.min.mjs.map +1 -0
  211. package/modules/zoom.mjs +701 -0
  212. package/modules/zoom.scss +21 -0
  213. package/package.json +213 -0
  214. package/shared/classes-to-selector.min.mjs +2 -0
  215. package/shared/classes-to-selector.min.mjs.map +1 -0
  216. package/shared/classes-to-selector.mjs +9 -0
  217. package/shared/create-element-if-not-defined.min.mjs +2 -0
  218. package/shared/create-element-if-not-defined.min.mjs.map +1 -0
  219. package/shared/create-element-if-not-defined.mjs +21 -0
  220. package/shared/create-shadow.min.mjs +2 -0
  221. package/shared/create-shadow.min.mjs.map +1 -0
  222. package/shared/create-shadow.mjs +14 -0
  223. package/shared/effect-init.min.mjs +2 -0
  224. package/shared/effect-init.min.mjs.map +1 -0
  225. package/shared/effect-init.mjs +58 -0
  226. package/shared/effect-target.min.mjs +2 -0
  227. package/shared/effect-target.min.mjs.map +1 -0
  228. package/shared/effect-target.mjs +12 -0
  229. package/shared/effect-virtual-transition-end.min.mjs +2 -0
  230. package/shared/effect-virtual-transition-end.min.mjs.map +1 -0
  231. package/shared/effect-virtual-transition-end.mjs +48 -0
  232. package/shared/get-element-params.min.mjs +2 -0
  233. package/shared/get-element-params.min.mjs.map +1 -0
  234. package/shared/get-element-params.mjs +113 -0
  235. package/shared/ssr-window.esm.min.mjs +2 -0
  236. package/shared/ssr-window.esm.min.mjs.map +1 -0
  237. package/shared/ssr-window.esm.mjs +146 -0
  238. package/shared/swiper-core.min.mjs +2 -0
  239. package/shared/swiper-core.min.mjs.map +1 -0
  240. package/shared/swiper-core.mjs +3969 -0
  241. package/shared/update-on-virtual-data.min.mjs +2 -0
  242. package/shared/update-on-virtual-data.min.mjs.map +1 -0
  243. package/shared/update-on-virtual-data.mjs +131 -0
  244. package/shared/update-swiper.min.mjs +2 -0
  245. package/shared/update-swiper.min.mjs.map +1 -0
  246. package/shared/update-swiper.mjs +238 -0
  247. package/shared/utils.min.mjs +2 -0
  248. package/shared/utils.min.mjs.map +1 -0
  249. package/shared/utils.mjs +343 -0
  250. package/swiper-bundle.css +735 -0
  251. package/swiper-bundle.js +9870 -0
  252. package/swiper-bundle.min.css +13 -0
  253. package/swiper-bundle.min.js +14 -0
  254. package/swiper-bundle.min.js.map +1 -0
  255. package/swiper-bundle.min.mjs +14 -0
  256. package/swiper-bundle.min.mjs.map +1 -0
  257. package/swiper-bundle.mjs +42 -0
  258. package/swiper-effect-utils.d.ts +28 -0
  259. package/swiper-effect-utils.min.mjs +14 -0
  260. package/swiper-effect-utils.min.mjs.map +1 -0
  261. package/swiper-effect-utils.mjs +17 -0
  262. package/swiper-element-bundle.js +10477 -0
  263. package/swiper-element-bundle.min.js +14 -0
  264. package/swiper-element-bundle.min.js.map +1 -0
  265. package/swiper-element-bundle.min.mjs +14 -0
  266. package/swiper-element-bundle.min.mjs.map +1 -0
  267. package/swiper-element-bundle.mjs +288 -0
  268. package/swiper-element.d.ts +444 -0
  269. package/swiper-element.js +5037 -0
  270. package/swiper-element.min.js +14 -0
  271. package/swiper-element.min.js.map +1 -0
  272. package/swiper-element.min.mjs +14 -0
  273. package/swiper-element.min.mjs.map +1 -0
  274. package/swiper-element.mjs +287 -0
  275. package/swiper-react.d.ts +501 -0
  276. package/swiper-react.mjs +394 -0
  277. package/swiper-vars.less +1 -0
  278. package/swiper-vars.scss +1 -0
  279. package/swiper-vue.d.ts +866 -0
  280. package/swiper-vue.mjs +838 -0
  281. package/swiper.css +228 -0
  282. package/swiper.d.ts +5 -0
  283. package/swiper.js +4418 -0
  284. package/swiper.less +251 -0
  285. package/swiper.min.css +13 -0
  286. package/swiper.min.js +14 -0
  287. package/swiper.min.js.map +1 -0
  288. package/swiper.min.mjs +14 -0
  289. package/swiper.min.mjs.map +1 -0
  290. package/swiper.mjs +13 -0
  291. package/swiper.scss +252 -0
  292. package/types/index.d.ts +6 -0
  293. package/types/modules/a11y.d.ts +110 -0
  294. package/types/modules/autoplay.d.ts +133 -0
  295. package/types/modules/controller.d.ts +35 -0
  296. package/types/modules/effect-cards.d.ts +33 -0
  297. package/types/modules/effect-coverflow.d.ts +45 -0
  298. package/types/modules/effect-creative.d.ts +86 -0
  299. package/types/modules/effect-cube.d.ts +30 -0
  300. package/types/modules/effect-fade.d.ts +12 -0
  301. package/types/modules/effect-flip.d.ts +18 -0
  302. package/types/modules/free-mode.d.ts +64 -0
  303. package/types/modules/grid.d.ts +21 -0
  304. package/types/modules/hash-navigation.d.ts +38 -0
  305. package/types/modules/history.d.ts +43 -0
  306. package/types/modules/index.d.ts +51 -0
  307. package/types/modules/keyboard.d.ts +46 -0
  308. package/types/modules/manipulation.d.ts +70 -0
  309. package/types/modules/mousewheel.d.ts +86 -0
  310. package/types/modules/navigation.d.ts +105 -0
  311. package/types/modules/pagination.d.ts +307 -0
  312. package/types/modules/parallax.d.ts +12 -0
  313. package/types/modules/public-api.d.ts +23 -0
  314. package/types/modules/scrollbar.d.ts +140 -0
  315. package/types/modules/thumbs.d.ts +54 -0
  316. package/types/modules/virtual.d.ts +135 -0
  317. package/types/modules/zoom.d.ts +91 -0
  318. package/types/shared.d.ts +13 -0
  319. package/types/swiper-class.d.ts +522 -0
  320. package/types/swiper-events.d.ts +359 -0
  321. package/types/swiper-options.d.ts +1217 -0
package/LICENSE ADDED
@@ -0,0 +1,20 @@
1
+ The MIT License (MIT)
2
+
3
+ Copyright (c) 2019 Vladimir Kharlampidi
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining a copy of
6
+ this software and associated documentation files (the "Software"), to deal in
7
+ the Software without restriction, including without limitation the rights to
8
+ use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of
9
+ the Software, and to permit persons to whom the Software is furnished to do so,
10
+ subject to the following conditions:
11
+
12
+ The above copyright notice and this permission notice shall be included in all
13
+ copies or substantial portions of the Software.
14
+
15
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS
17
+ FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR
18
+ COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER
19
+ IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN
20
+ CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,11 @@
1
+ Swiper
2
+ ==========
3
+
4
+ Swiper - is the free and most modern mobile touch slider with hardware accelerated transitions and amazing native behavior. It is intended to be used in mobile websites, mobile web apps, and mobile native/hybrid apps.
5
+
6
+ Swiper is not compatible with all platforms, it is a modern touch slider which is focused only on modern apps/platforms to bring the best experience and simplicity.
7
+
8
+ # Getting Started
9
+ * [Getting Started Guide](https://swiperjs.com/get-started/)
10
+ * [API](https://swiperjs.com/swiper-api/)
11
+ * [Demos](https://swiperjs.com/demos/)
@@ -0,0 +1,9 @@
1
+ /* a11y */
2
+ .swiper .swiper-notification {
3
+ position: absolute;
4
+ left: 0;
5
+ top: 0;
6
+ pointer-events: none;
7
+ opacity: 0;
8
+ z-index: -1000;
9
+ }
@@ -0,0 +1 @@
1
+ .swiper .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}
@@ -0,0 +1,9 @@
1
+ /* a11y */
2
+ .swiper .swiper-notification {
3
+ position: absolute;
4
+ left: 0;
5
+ top: 0;
6
+ pointer-events: none;
7
+ opacity: 0;
8
+ z-index: -1000;
9
+ }
@@ -0,0 +1,9 @@
1
+ /* a11y */
2
+ .swiper .swiper-notification {
3
+ position: absolute;
4
+ left: 0;
5
+ top: 0;
6
+ pointer-events: none;
7
+ opacity: 0;
8
+ z-index: -1000;
9
+ }
@@ -0,0 +1 @@
1
+ .swiper .swiper-notification{position:absolute;left:0;top:0;pointer-events:none;opacity:0;z-index:-1000}
@@ -0,0 +1,2 @@
1
+ import{g as getDocument}from"../shared/ssr-window.esm.min.mjs";import{c as classesToSelector}from"../shared/classes-to-selector.min.mjs";import{c as createElement,i as elementIndex,m as makeElementsArray,s as setInnerHTML}from"../shared/utils.min.mjs";function A11y(e){let{swiper:a,extendParams:t,on:n}=e;t({a11y:{enabled:!0,notificationClass:"swiper-notification",prevSlideMessage:"Previous slide",nextSlideMessage:"Next slide",firstSlideMessage:"This is the first slide",lastSlideMessage:"This is the last slide",paginationBulletMessage:"Go to slide {{index}}",slideLabelMessage:"{{index}} / {{slidesLength}}",containerMessage:null,containerRoleDescriptionMessage:null,containerRole:null,itemRoleDescriptionMessage:null,slideRole:"group",id:null,scrollOnFocus:!0}}),a.a11y={clicked:!1};let i,s,r=null,l=(new Date).getTime();function o(e){const a=r;0!==a.length&&setInnerHTML(a,e)}function c(e){(e=makeElementsArray(e)).forEach((e=>{e.setAttribute("tabIndex","0")}))}function d(e){(e=makeElementsArray(e)).forEach((e=>{e.setAttribute("tabIndex","-1")}))}function m(e,a){(e=makeElementsArray(e)).forEach((e=>{e.setAttribute("role",a)}))}function p(e,a){(e=makeElementsArray(e)).forEach((e=>{e.setAttribute("aria-roledescription",a)}))}function g(e,a){(e=makeElementsArray(e)).forEach((e=>{e.setAttribute("aria-label",a)}))}function u(e){(e=makeElementsArray(e)).forEach((e=>{e.setAttribute("aria-disabled",!0)}))}function E(e){(e=makeElementsArray(e)).forEach((e=>{e.setAttribute("aria-disabled",!1)}))}function f(e){if(13!==e.keyCode&&32!==e.keyCode)return;const t=a.params.a11y,n=e.target;if(!a.pagination||!a.pagination.el||n!==a.pagination.el&&!a.pagination.el.contains(e.target)||e.target.matches(classesToSelector(a.params.pagination.bulletClass))){if(a.navigation&&a.navigation.prevEl&&a.navigation.nextEl){const e=makeElementsArray(a.navigation.prevEl);makeElementsArray(a.navigation.nextEl).includes(n)&&(a.isEnd&&!a.params.loop||a.slideNext(),a.isEnd?o(t.lastSlideMessage):o(t.nextSlideMessage)),e.includes(n)&&(a.isBeginning&&!a.params.loop||a.slidePrev(),a.isBeginning?o(t.firstSlideMessage):o(t.prevSlideMessage))}a.pagination&&n.matches(classesToSelector(a.params.pagination.bulletClass))&&n.click()}}function v(){return a.pagination&&a.pagination.bullets&&a.pagination.bullets.length}function y(){return v()&&a.params.pagination.clickable}const b=(e,a,t)=>{c(e),"BUTTON"!==e.tagName&&(m(e,"button"),e.addEventListener("keydown",f)),g(e,t),function(e,a){(e=makeElementsArray(e)).forEach((e=>{e.setAttribute("aria-controls",a)}))}(e,a)},h=e=>{s&&s!==e.target&&!s.contains(e.target)&&(i=!0),a.a11y.clicked=!0},A=()=>{i=!1,requestAnimationFrame((()=>{requestAnimationFrame((()=>{a.destroyed||(a.a11y.clicked=!1)}))}))},k=e=>{l=(new Date).getTime()},x=e=>{if(a.a11y.clicked||!a.params.a11y.scrollOnFocus)return;if((new Date).getTime()-l<100)return;const t=e.target.closest(`.${a.params.slideClass}, swiper-slide`);if(!t||!a.slides.includes(t))return;s=t;const n=a.slides.indexOf(t)===a.activeIndex,r=a.params.watchSlidesProgress&&a.visibleSlides&&a.visibleSlides.includes(t);n||r||e.sourceCapabilities&&e.sourceCapabilities.firesTouchEvents||(a.isHorizontal()?a.el.scrollLeft=0:a.el.scrollTop=0,requestAnimationFrame((()=>{i||(a.params.loop?a.slideToLoop(a.getSlideIndexWhenGrid(parseInt(t.getAttribute("data-swiper-slide-index"))),0):a.slideTo(a.getSlideIndexWhenGrid(a.slides.indexOf(t)),0),i=!1)})))},M=()=>{const e=a.params.a11y;e.itemRoleDescriptionMessage&&p(a.slides,e.itemRoleDescriptionMessage),e.slideRole&&m(a.slides,e.slideRole);const t=a.slides.length;e.slideLabelMessage&&a.slides.forEach(((n,i)=>{const s=a.params.loop?parseInt(n.getAttribute("data-swiper-slide-index"),10):i;g(n,e.slideLabelMessage.replace(/\{\{index\}\}/,s+1).replace(/\{\{slidesLength\}\}/,t))}))},L=()=>{const e=a.params.a11y;a.el.append(r);const t=a.el;e.containerRoleDescriptionMessage&&p(t,e.containerRoleDescriptionMessage),e.containerMessage&&g(t,e.containerMessage),e.containerRole&&m(t,e.containerRole);const n=a.wrapperEl,i=e.id||n.getAttribute("id")||`swiper-wrapper-${s=16,void 0===s&&(s=16),"x".repeat(s).replace(/x/g,(()=>Math.round(16*Math.random()).toString(16)))}`;var s;const l=a.params.autoplay&&a.params.autoplay.enabled?"off":"polite";var o;o=i,makeElementsArray(n).forEach((e=>{e.setAttribute("id",o)})),function(e,a){(e=makeElementsArray(e)).forEach((e=>{e.setAttribute("aria-live",a)}))}(n,l),M();let{nextEl:c,prevEl:d}=a.navigation?a.navigation:{};if(c=makeElementsArray(c),d=makeElementsArray(d),c&&c.forEach((a=>b(a,i,e.nextSlideMessage))),d&&d.forEach((a=>b(a,i,e.prevSlideMessage))),y()){makeElementsArray(a.pagination.el).forEach((e=>{e.addEventListener("keydown",f)}))}getDocument().addEventListener("visibilitychange",k),a.el.addEventListener("focus",x,!0),a.el.addEventListener("focus",x,!0),a.el.addEventListener("pointerdown",h,!0),a.el.addEventListener("pointerup",A,!0)};n("beforeInit",(()=>{r=createElement("span",a.params.a11y.notificationClass),r.setAttribute("aria-live","assertive"),r.setAttribute("aria-atomic","true")})),n("afterInit",(()=>{a.params.a11y.enabled&&L()})),n("slidesLengthChange snapGridLengthChange slidesGridLengthChange",(()=>{a.params.a11y.enabled&&M()})),n("fromEdge toEdge afterInit lock unlock",(()=>{a.params.a11y.enabled&&function(){if(a.params.loop||a.params.rewind||!a.navigation)return;const{nextEl:e,prevEl:t}=a.navigation;t&&(a.isBeginning?(u(t),d(t)):(E(t),c(t))),e&&(a.isEnd?(u(e),d(e)):(E(e),c(e)))}()})),n("paginationUpdate",(()=>{a.params.a11y.enabled&&function(){const e=a.params.a11y;v()&&a.pagination.bullets.forEach((t=>{a.params.pagination.clickable&&(c(t),a.params.pagination.renderBullet||(m(t,"button"),g(t,e.paginationBulletMessage.replace(/\{\{index\}\}/,elementIndex(t)+1)))),t.matches(classesToSelector(a.params.pagination.bulletActiveClass))?t.setAttribute("aria-current","true"):t.removeAttribute("aria-current")}))}()})),n("destroy",(()=>{a.params.a11y.enabled&&function(){r&&r.remove();let{nextEl:e,prevEl:t}=a.navigation?a.navigation:{};e=makeElementsArray(e),t=makeElementsArray(t),e&&e.forEach((e=>e.removeEventListener("keydown",f))),t&&t.forEach((e=>e.removeEventListener("keydown",f))),y()&&makeElementsArray(a.pagination.el).forEach((e=>{e.removeEventListener("keydown",f)}));getDocument().removeEventListener("visibilitychange",k),a.el&&"string"!=typeof a.el&&(a.el.removeEventListener("focus",x,!0),a.el.removeEventListener("pointerdown",h,!0),a.el.removeEventListener("pointerup",A,!0))}()}))}export{A11y as default};
2
+ //# sourceMappingURL=a11y.min.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"a11y.mjs.mjs","names":["getDocument","classesToSelector","createElement","elementIndex","makeElementsArray","setInnerHTML","A11y","_ref","swiper","extendParams","on","a11y","enabled","notificationClass","prevSlideMessage","nextSlideMessage","firstSlideMessage","lastSlideMessage","paginationBulletMessage","slideLabelMessage","containerMessage","containerRoleDescriptionMessage","containerRole","itemRoleDescriptionMessage","slideRole","id","scrollOnFocus","clicked","preventFocusHandler","focusTargetSlideEl","liveRegion","visibilityChangedTimestamp","Date","getTime","notify","message","notification","length","makeElFocusable","el","forEach","subEl","setAttribute","makeElNotFocusable","addElRole","role","addElRoleDescription","description","addElLabel","label","disableEl","enableEl","onEnterOrSpaceKey","e","keyCode","params","targetEl","target","pagination","contains","matches","bulletClass","navigation","prevEl","nextEl","prevEls","includes","isEnd","loop","slideNext","isBeginning","slidePrev","click","hasPagination","bullets","hasClickablePagination","clickable","initNavEl","wrapperId","tagName","addEventListener","controls","addElControls","handlePointerDown","handlePointerUp","requestAnimationFrame","destroyed","onVisibilityChange","handleFocus","slideEl","closest","slideClass","slides","isActive","indexOf","activeIndex","isVisible","watchSlidesProgress","visibleSlides","sourceCapabilities","firesTouchEvents","isHorizontal","scrollLeft","scrollTop","slideToLoop","getSlideIndexWhenGrid","parseInt","getAttribute","slideTo","initSlides","slidesLength","index","slideIndex","replace","init","append","containerEl","wrapperEl","size","repeat","Math","round","random","toString","live","autoplay","addElLive","rewind","updateNavigation","bulletEl","renderBullet","bulletActiveClass","removeAttribute","updatePagination","remove","removeEventListener","destroy"],"sources":["0"],"mappings":"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"}
@@ -0,0 +1,377 @@
1
+ import { g as getDocument } from '../shared/ssr-window.esm.mjs';
2
+ import { c as classesToSelector } from '../shared/classes-to-selector.mjs';
3
+ import { c as createElement, i as elementIndex, m as makeElementsArray, s as setInnerHTML } from '../shared/utils.mjs';
4
+
5
+ function A11y(_ref) {
6
+ let {
7
+ swiper,
8
+ extendParams,
9
+ on
10
+ } = _ref;
11
+ extendParams({
12
+ a11y: {
13
+ enabled: true,
14
+ notificationClass: 'swiper-notification',
15
+ prevSlideMessage: 'Previous slide',
16
+ nextSlideMessage: 'Next slide',
17
+ firstSlideMessage: 'This is the first slide',
18
+ lastSlideMessage: 'This is the last slide',
19
+ paginationBulletMessage: 'Go to slide {{index}}',
20
+ slideLabelMessage: '{{index}} / {{slidesLength}}',
21
+ containerMessage: null,
22
+ containerRoleDescriptionMessage: null,
23
+ containerRole: null,
24
+ itemRoleDescriptionMessage: null,
25
+ slideRole: 'group',
26
+ id: null,
27
+ scrollOnFocus: true
28
+ }
29
+ });
30
+ swiper.a11y = {
31
+ clicked: false
32
+ };
33
+ let liveRegion = null;
34
+ let preventFocusHandler;
35
+ let focusTargetSlideEl;
36
+ let visibilityChangedTimestamp = new Date().getTime();
37
+ function notify(message) {
38
+ const notification = liveRegion;
39
+ if (notification.length === 0) return;
40
+ setInnerHTML(notification, message);
41
+ }
42
+ function getRandomNumber(size) {
43
+ if (size === void 0) {
44
+ size = 16;
45
+ }
46
+ const randomChar = () => Math.round(16 * Math.random()).toString(16);
47
+ return 'x'.repeat(size).replace(/x/g, randomChar);
48
+ }
49
+ function makeElFocusable(el) {
50
+ el = makeElementsArray(el);
51
+ el.forEach(subEl => {
52
+ subEl.setAttribute('tabIndex', '0');
53
+ });
54
+ }
55
+ function makeElNotFocusable(el) {
56
+ el = makeElementsArray(el);
57
+ el.forEach(subEl => {
58
+ subEl.setAttribute('tabIndex', '-1');
59
+ });
60
+ }
61
+ function addElRole(el, role) {
62
+ el = makeElementsArray(el);
63
+ el.forEach(subEl => {
64
+ subEl.setAttribute('role', role);
65
+ });
66
+ }
67
+ function addElRoleDescription(el, description) {
68
+ el = makeElementsArray(el);
69
+ el.forEach(subEl => {
70
+ subEl.setAttribute('aria-roledescription', description);
71
+ });
72
+ }
73
+ function addElControls(el, controls) {
74
+ el = makeElementsArray(el);
75
+ el.forEach(subEl => {
76
+ subEl.setAttribute('aria-controls', controls);
77
+ });
78
+ }
79
+ function addElLabel(el, label) {
80
+ el = makeElementsArray(el);
81
+ el.forEach(subEl => {
82
+ subEl.setAttribute('aria-label', label);
83
+ });
84
+ }
85
+ function addElId(el, id) {
86
+ el = makeElementsArray(el);
87
+ el.forEach(subEl => {
88
+ subEl.setAttribute('id', id);
89
+ });
90
+ }
91
+ function addElLive(el, live) {
92
+ el = makeElementsArray(el);
93
+ el.forEach(subEl => {
94
+ subEl.setAttribute('aria-live', live);
95
+ });
96
+ }
97
+ function disableEl(el) {
98
+ el = makeElementsArray(el);
99
+ el.forEach(subEl => {
100
+ subEl.setAttribute('aria-disabled', true);
101
+ });
102
+ }
103
+ function enableEl(el) {
104
+ el = makeElementsArray(el);
105
+ el.forEach(subEl => {
106
+ subEl.setAttribute('aria-disabled', false);
107
+ });
108
+ }
109
+ function onEnterOrSpaceKey(e) {
110
+ if (e.keyCode !== 13 && e.keyCode !== 32) return;
111
+ const params = swiper.params.a11y;
112
+ const targetEl = e.target;
113
+ if (swiper.pagination && swiper.pagination.el && (targetEl === swiper.pagination.el || swiper.pagination.el.contains(e.target))) {
114
+ if (!e.target.matches(classesToSelector(swiper.params.pagination.bulletClass))) return;
115
+ }
116
+ if (swiper.navigation && swiper.navigation.prevEl && swiper.navigation.nextEl) {
117
+ const prevEls = makeElementsArray(swiper.navigation.prevEl);
118
+ const nextEls = makeElementsArray(swiper.navigation.nextEl);
119
+ if (nextEls.includes(targetEl)) {
120
+ if (!(swiper.isEnd && !swiper.params.loop)) {
121
+ swiper.slideNext();
122
+ }
123
+ if (swiper.isEnd) {
124
+ notify(params.lastSlideMessage);
125
+ } else {
126
+ notify(params.nextSlideMessage);
127
+ }
128
+ }
129
+ if (prevEls.includes(targetEl)) {
130
+ if (!(swiper.isBeginning && !swiper.params.loop)) {
131
+ swiper.slidePrev();
132
+ }
133
+ if (swiper.isBeginning) {
134
+ notify(params.firstSlideMessage);
135
+ } else {
136
+ notify(params.prevSlideMessage);
137
+ }
138
+ }
139
+ }
140
+ if (swiper.pagination && targetEl.matches(classesToSelector(swiper.params.pagination.bulletClass))) {
141
+ targetEl.click();
142
+ }
143
+ }
144
+ function updateNavigation() {
145
+ if (swiper.params.loop || swiper.params.rewind || !swiper.navigation) return;
146
+ const {
147
+ nextEl,
148
+ prevEl
149
+ } = swiper.navigation;
150
+ if (prevEl) {
151
+ if (swiper.isBeginning) {
152
+ disableEl(prevEl);
153
+ makeElNotFocusable(prevEl);
154
+ } else {
155
+ enableEl(prevEl);
156
+ makeElFocusable(prevEl);
157
+ }
158
+ }
159
+ if (nextEl) {
160
+ if (swiper.isEnd) {
161
+ disableEl(nextEl);
162
+ makeElNotFocusable(nextEl);
163
+ } else {
164
+ enableEl(nextEl);
165
+ makeElFocusable(nextEl);
166
+ }
167
+ }
168
+ }
169
+ function hasPagination() {
170
+ return swiper.pagination && swiper.pagination.bullets && swiper.pagination.bullets.length;
171
+ }
172
+ function hasClickablePagination() {
173
+ return hasPagination() && swiper.params.pagination.clickable;
174
+ }
175
+ function updatePagination() {
176
+ const params = swiper.params.a11y;
177
+ if (!hasPagination()) return;
178
+ swiper.pagination.bullets.forEach(bulletEl => {
179
+ if (swiper.params.pagination.clickable) {
180
+ makeElFocusable(bulletEl);
181
+ if (!swiper.params.pagination.renderBullet) {
182
+ addElRole(bulletEl, 'button');
183
+ addElLabel(bulletEl, params.paginationBulletMessage.replace(/\{\{index\}\}/, elementIndex(bulletEl) + 1));
184
+ }
185
+ }
186
+ if (bulletEl.matches(classesToSelector(swiper.params.pagination.bulletActiveClass))) {
187
+ bulletEl.setAttribute('aria-current', 'true');
188
+ } else {
189
+ bulletEl.removeAttribute('aria-current');
190
+ }
191
+ });
192
+ }
193
+ const initNavEl = (el, wrapperId, message) => {
194
+ makeElFocusable(el);
195
+ if (el.tagName !== 'BUTTON') {
196
+ addElRole(el, 'button');
197
+ el.addEventListener('keydown', onEnterOrSpaceKey);
198
+ }
199
+ addElLabel(el, message);
200
+ addElControls(el, wrapperId);
201
+ };
202
+ const handlePointerDown = e => {
203
+ if (focusTargetSlideEl && focusTargetSlideEl !== e.target && !focusTargetSlideEl.contains(e.target)) {
204
+ preventFocusHandler = true;
205
+ }
206
+ swiper.a11y.clicked = true;
207
+ };
208
+ const handlePointerUp = () => {
209
+ preventFocusHandler = false;
210
+ requestAnimationFrame(() => {
211
+ requestAnimationFrame(() => {
212
+ if (!swiper.destroyed) {
213
+ swiper.a11y.clicked = false;
214
+ }
215
+ });
216
+ });
217
+ };
218
+ const onVisibilityChange = e => {
219
+ visibilityChangedTimestamp = new Date().getTime();
220
+ };
221
+ const handleFocus = e => {
222
+ if (swiper.a11y.clicked || !swiper.params.a11y.scrollOnFocus) return;
223
+ if (new Date().getTime() - visibilityChangedTimestamp < 100) return;
224
+ const slideEl = e.target.closest(`.${swiper.params.slideClass}, swiper-slide`);
225
+ if (!slideEl || !swiper.slides.includes(slideEl)) return;
226
+ focusTargetSlideEl = slideEl;
227
+ const isActive = swiper.slides.indexOf(slideEl) === swiper.activeIndex;
228
+ const isVisible = swiper.params.watchSlidesProgress && swiper.visibleSlides && swiper.visibleSlides.includes(slideEl);
229
+ if (isActive || isVisible) return;
230
+ if (e.sourceCapabilities && e.sourceCapabilities.firesTouchEvents) return;
231
+ if (swiper.isHorizontal()) {
232
+ swiper.el.scrollLeft = 0;
233
+ } else {
234
+ swiper.el.scrollTop = 0;
235
+ }
236
+ requestAnimationFrame(() => {
237
+ if (preventFocusHandler) return;
238
+ if (swiper.params.loop) {
239
+ swiper.slideToLoop(swiper.getSlideIndexWhenGrid(parseInt(slideEl.getAttribute('data-swiper-slide-index'))), 0);
240
+ } else {
241
+ swiper.slideTo(swiper.getSlideIndexWhenGrid(swiper.slides.indexOf(slideEl)), 0);
242
+ }
243
+ preventFocusHandler = false;
244
+ });
245
+ };
246
+ const initSlides = () => {
247
+ const params = swiper.params.a11y;
248
+ if (params.itemRoleDescriptionMessage) {
249
+ addElRoleDescription(swiper.slides, params.itemRoleDescriptionMessage);
250
+ }
251
+ if (params.slideRole) {
252
+ addElRole(swiper.slides, params.slideRole);
253
+ }
254
+ const slidesLength = swiper.slides.length;
255
+ if (params.slideLabelMessage) {
256
+ swiper.slides.forEach((slideEl, index) => {
257
+ const slideIndex = swiper.params.loop ? parseInt(slideEl.getAttribute('data-swiper-slide-index'), 10) : index;
258
+ const ariaLabelMessage = params.slideLabelMessage.replace(/\{\{index\}\}/, slideIndex + 1).replace(/\{\{slidesLength\}\}/, slidesLength);
259
+ addElLabel(slideEl, ariaLabelMessage);
260
+ });
261
+ }
262
+ };
263
+ const init = () => {
264
+ const params = swiper.params.a11y;
265
+ swiper.el.append(liveRegion);
266
+
267
+ // Container
268
+ const containerEl = swiper.el;
269
+ if (params.containerRoleDescriptionMessage) {
270
+ addElRoleDescription(containerEl, params.containerRoleDescriptionMessage);
271
+ }
272
+ if (params.containerMessage) {
273
+ addElLabel(containerEl, params.containerMessage);
274
+ }
275
+ if (params.containerRole) {
276
+ addElRole(containerEl, params.containerRole);
277
+ }
278
+
279
+ // Wrapper
280
+ const wrapperEl = swiper.wrapperEl;
281
+ const wrapperId = params.id || wrapperEl.getAttribute('id') || `swiper-wrapper-${getRandomNumber(16)}`;
282
+ const live = swiper.params.autoplay && swiper.params.autoplay.enabled ? 'off' : 'polite';
283
+ addElId(wrapperEl, wrapperId);
284
+ addElLive(wrapperEl, live);
285
+
286
+ // Slide
287
+ initSlides();
288
+
289
+ // Navigation
290
+ let {
291
+ nextEl,
292
+ prevEl
293
+ } = swiper.navigation ? swiper.navigation : {};
294
+ nextEl = makeElementsArray(nextEl);
295
+ prevEl = makeElementsArray(prevEl);
296
+ if (nextEl) {
297
+ nextEl.forEach(el => initNavEl(el, wrapperId, params.nextSlideMessage));
298
+ }
299
+ if (prevEl) {
300
+ prevEl.forEach(el => initNavEl(el, wrapperId, params.prevSlideMessage));
301
+ }
302
+
303
+ // Pagination
304
+ if (hasClickablePagination()) {
305
+ const paginationEl = makeElementsArray(swiper.pagination.el);
306
+ paginationEl.forEach(el => {
307
+ el.addEventListener('keydown', onEnterOrSpaceKey);
308
+ });
309
+ }
310
+
311
+ // Tab focus
312
+ const document = getDocument();
313
+ document.addEventListener('visibilitychange', onVisibilityChange);
314
+ swiper.el.addEventListener('focus', handleFocus, true);
315
+ swiper.el.addEventListener('focus', handleFocus, true);
316
+ swiper.el.addEventListener('pointerdown', handlePointerDown, true);
317
+ swiper.el.addEventListener('pointerup', handlePointerUp, true);
318
+ };
319
+ function destroy() {
320
+ if (liveRegion) liveRegion.remove();
321
+ let {
322
+ nextEl,
323
+ prevEl
324
+ } = swiper.navigation ? swiper.navigation : {};
325
+ nextEl = makeElementsArray(nextEl);
326
+ prevEl = makeElementsArray(prevEl);
327
+ if (nextEl) {
328
+ nextEl.forEach(el => el.removeEventListener('keydown', onEnterOrSpaceKey));
329
+ }
330
+ if (prevEl) {
331
+ prevEl.forEach(el => el.removeEventListener('keydown', onEnterOrSpaceKey));
332
+ }
333
+
334
+ // Pagination
335
+ if (hasClickablePagination()) {
336
+ const paginationEl = makeElementsArray(swiper.pagination.el);
337
+ paginationEl.forEach(el => {
338
+ el.removeEventListener('keydown', onEnterOrSpaceKey);
339
+ });
340
+ }
341
+ const document = getDocument();
342
+ document.removeEventListener('visibilitychange', onVisibilityChange);
343
+ // Tab focus
344
+ if (swiper.el && typeof swiper.el !== 'string') {
345
+ swiper.el.removeEventListener('focus', handleFocus, true);
346
+ swiper.el.removeEventListener('pointerdown', handlePointerDown, true);
347
+ swiper.el.removeEventListener('pointerup', handlePointerUp, true);
348
+ }
349
+ }
350
+ on('beforeInit', () => {
351
+ liveRegion = createElement('span', swiper.params.a11y.notificationClass);
352
+ liveRegion.setAttribute('aria-live', 'assertive');
353
+ liveRegion.setAttribute('aria-atomic', 'true');
354
+ });
355
+ on('afterInit', () => {
356
+ if (!swiper.params.a11y.enabled) return;
357
+ init();
358
+ });
359
+ on('slidesLengthChange snapGridLengthChange slidesGridLengthChange', () => {
360
+ if (!swiper.params.a11y.enabled) return;
361
+ initSlides();
362
+ });
363
+ on('fromEdge toEdge afterInit lock unlock', () => {
364
+ if (!swiper.params.a11y.enabled) return;
365
+ updateNavigation();
366
+ });
367
+ on('paginationUpdate', () => {
368
+ if (!swiper.params.a11y.enabled) return;
369
+ updatePagination();
370
+ });
371
+ on('destroy', () => {
372
+ if (!swiper.params.a11y.enabled) return;
373
+ destroy();
374
+ });
375
+ }
376
+
377
+ export { A11y as default };
@@ -0,0 +1,9 @@
1
+ /* a11y */
2
+ .swiper .swiper-notification {
3
+ position: absolute;
4
+ left: 0;
5
+ top: 0;
6
+ pointer-events: none;
7
+ opacity: 0;
8
+ z-index: -1000;
9
+ }
File without changes
File without changes
File without changes
File without changes
File without changes
@@ -0,0 +1,2 @@
1
+ import{g as getDocument}from"../shared/ssr-window.esm.min.mjs";function Autoplay(e){let a,t,{swiper:n,extendParams:i,on:r,emit:o,params:s}=e;n.autoplay={running:!1,paused:!1,timeLeft:0},i({autoplay:{enabled:!1,delay:3e3,waitForTransition:!0,disableOnInteraction:!1,stopOnLastSlide:!1,reverseDirection:!1,pauseOnMouseEnter:!1}});let l,p,u,d,y,m,c,g,v=s&&s.autoplay?s.autoplay.delay:3e3,T=s&&s.autoplay?s.autoplay.delay:3e3,f=(new Date).getTime();function w(e){n&&!n.destroyed&&n.wrapperEl&&e.target===n.wrapperEl&&(n.wrapperEl.removeEventListener("transitionend",w),g||e.detail&&e.detail.bySwiperTouchMove||S())}const b=()=>{if(n.destroyed||!n.autoplay.running)return;n.autoplay.paused?p=!0:p&&(T=l,p=!1);const e=n.autoplay.paused?l:f+T-(new Date).getTime();n.autoplay.timeLeft=e,o("autoplayTimeLeft",e,e/v),t=requestAnimationFrame((()=>{b()}))},E=e=>{if(n.destroyed||!n.autoplay.running)return;cancelAnimationFrame(t),b();let i=void 0===e?n.params.autoplay.delay:e;v=n.params.autoplay.delay,T=n.params.autoplay.delay;const r=(()=>{let e;if(e=n.virtual&&n.params.virtual.enabled?n.slides.find((e=>e.classList.contains("swiper-slide-active"))):n.slides[n.activeIndex],!e)return;return parseInt(e.getAttribute("data-swiper-autoplay"),10)})();!Number.isNaN(r)&&r>0&&void 0===e&&(i=r,v=r,T=r),l=i;const s=n.params.speed,p=()=>{n&&!n.destroyed&&(n.params.autoplay.reverseDirection?!n.isBeginning||n.params.loop||n.params.rewind?(n.slidePrev(s,!0,!0),o("autoplay")):n.params.autoplay.stopOnLastSlide||(n.slideTo(n.slides.length-1,s,!0,!0),o("autoplay")):!n.isEnd||n.params.loop||n.params.rewind?(n.slideNext(s,!0,!0),o("autoplay")):n.params.autoplay.stopOnLastSlide||(n.slideTo(0,s,!0,!0),o("autoplay")),n.params.cssMode&&(f=(new Date).getTime(),requestAnimationFrame((()=>{E()}))))};return i>0?(clearTimeout(a),a=setTimeout((()=>{p()}),i)):requestAnimationFrame((()=>{p()})),i},L=()=>{f=(new Date).getTime(),n.autoplay.running=!0,E(),o("autoplayStart")},D=()=>{n.autoplay.running=!1,clearTimeout(a),cancelAnimationFrame(t),o("autoplayStop")},O=(e,t)=>{if(n.destroyed||!n.autoplay.running)return;clearTimeout(a),e||(c=!0);const i=()=>{o("autoplayPause"),n.params.autoplay.waitForTransition?n.wrapperEl.addEventListener("transitionend",w):S()};if(n.autoplay.paused=!0,t)return m&&(l=n.params.autoplay.delay),m=!1,void i();const r=l||n.params.autoplay.delay;l=r-((new Date).getTime()-f),n.isEnd&&l<0&&!n.params.loop||(l<0&&(l=0),i())},S=()=>{n.isEnd&&l<0&&!n.params.loop||n.destroyed||!n.autoplay.running||(f=(new Date).getTime(),c?(c=!1,E(l)):E(),n.autoplay.paused=!1,o("autoplayResume"))},M=()=>{if(n.destroyed||!n.autoplay.running)return;const e=getDocument();"hidden"===e.visibilityState&&(c=!0,O(!0)),"visible"===e.visibilityState&&S()},h=e=>{"mouse"===e.pointerType&&(c=!0,g=!0,n.animating||n.autoplay.paused||O(!0))},A=e=>{"mouse"===e.pointerType&&(g=!1,n.autoplay.paused&&S())};r("init",(()=>{n.params.autoplay.enabled&&(n.params.autoplay.pauseOnMouseEnter&&(n.el.addEventListener("pointerenter",h),n.el.addEventListener("pointerleave",A)),getDocument().addEventListener("visibilitychange",M),L())})),r("destroy",(()=>{n.el&&"string"!=typeof n.el&&(n.el.removeEventListener("pointerenter",h),n.el.removeEventListener("pointerleave",A)),getDocument().removeEventListener("visibilitychange",M),n.autoplay.running&&D()})),r("_freeModeStaticRelease",(()=>{(d||c)&&S()})),r("_freeModeNoMomentumRelease",(()=>{n.params.autoplay.disableOnInteraction?D():O(!0,!0)})),r("beforeTransitionStart",((e,a,t)=>{!n.destroyed&&n.autoplay.running&&(t||!n.params.autoplay.disableOnInteraction?O(!0,!0):D())})),r("sliderFirstMove",(()=>{!n.destroyed&&n.autoplay.running&&(n.params.autoplay.disableOnInteraction?D():(u=!0,d=!1,c=!1,y=setTimeout((()=>{c=!0,d=!0,O(!0)}),200)))})),r("touchEnd",(()=>{if(!n.destroyed&&n.autoplay.running&&u){if(clearTimeout(y),clearTimeout(a),n.params.autoplay.disableOnInteraction)return d=!1,void(u=!1);d&&n.params.cssMode&&S(),d=!1,u=!1}})),r("slideChange",(()=>{!n.destroyed&&n.autoplay.running&&(m=!0)})),Object.assign(n.autoplay,{start:L,stop:D,pause:O,resume:S})}export{Autoplay as default};
2
+ //# sourceMappingURL=autoplay.min.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"autoplay.mjs.mjs","names":["getDocument","Autoplay","_ref","timeout","raf","swiper","extendParams","on","emit","params","autoplay","running","paused","timeLeft","enabled","delay","waitForTransition","disableOnInteraction","stopOnLastSlide","reverseDirection","pauseOnMouseEnter","autoplayTimeLeft","wasPaused","isTouched","pausedByTouch","touchStartTimeout","slideChanged","pausedByInteraction","pausedByPointerEnter","autoplayDelayTotal","autoplayDelayCurrent","autoplayStartTime","Date","getTime","onTransitionEnd","e","destroyed","wrapperEl","target","removeEventListener","detail","bySwiperTouchMove","resume","calcTimeLeft","requestAnimationFrame","run","delayForce","cancelAnimationFrame","currentSlideDelay","activeSlideEl","virtual","slides","find","slideEl","classList","contains","activeIndex","parseInt","getAttribute","getSlideDelay","Number","isNaN","speed","proceed","isBeginning","loop","rewind","slidePrev","slideTo","length","isEnd","slideNext","cssMode","clearTimeout","setTimeout","start","stop","pause","internal","reset","addEventListener","onVisibilityChange","document","visibilityState","onPointerEnter","pointerType","animating","onPointerLeave","el","_s","Object","assign"],"sources":["0"],"mappings":"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"}