@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
@@ -0,0 +1,63 @@
1
+ :host {
2
+ --swiper-navigation-size: 44px;
3
+ /*
4
+ --swiper-navigation-top-offset: 50%;
5
+ --swiper-navigation-sides-offset: 10px;
6
+ --swiper-navigation-color: var(--swiper-theme-color);
7
+ */
8
+ }
9
+ .swiper-button-prev,
10
+ .swiper-button-next {
11
+ position: absolute;
12
+ top: var(--swiper-navigation-top-offset, 50%);
13
+ width: calc(var(--swiper-navigation-size) / 44 * 27);
14
+ height: var(--swiper-navigation-size);
15
+ margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
16
+ z-index: 10;
17
+ cursor: pointer;
18
+ display: flex;
19
+ align-items: center;
20
+ justify-content: center;
21
+ color: var(--swiper-navigation-color, var(--swiper-theme-color));
22
+ }
23
+ .swiper-button-prev.swiper-button-disabled,
24
+ .swiper-button-next.swiper-button-disabled {
25
+ opacity: 0.35;
26
+ cursor: auto;
27
+ pointer-events: none;
28
+ }
29
+ .swiper-button-prev.swiper-button-hidden,
30
+ .swiper-button-next.swiper-button-hidden {
31
+ opacity: 0;
32
+ cursor: auto;
33
+ pointer-events: none;
34
+ }
35
+ .swiper-navigation-disabled .swiper-button-prev,
36
+ .swiper-navigation-disabled .swiper-button-next {
37
+ display: none !important;
38
+ }
39
+ .swiper-button-prev svg,
40
+ .swiper-button-next svg {
41
+ width: 100%;
42
+ height: 100%;
43
+ object-fit: contain;
44
+ transform-origin: center;
45
+ }
46
+ .swiper-rtl .swiper-button-prev svg,
47
+ .swiper-rtl .swiper-button-next svg {
48
+ transform: rotate(180deg);
49
+ }
50
+ .swiper-button-prev,
51
+ .swiper-rtl .swiper-button-next {
52
+ left: var(--swiper-navigation-sides-offset, 10px);
53
+ right: auto;
54
+ }
55
+ .swiper-button-next,
56
+ .swiper-rtl .swiper-button-prev {
57
+ right: var(--swiper-navigation-sides-offset, 10px);
58
+ left: auto;
59
+ }
60
+ .swiper-button-lock {
61
+ display: none;
62
+ }
63
+ /* Navigation font start *//* Navigation font end */
@@ -0,0 +1 @@
1
+ :host{--swiper-navigation-size:44px}.swiper-button-next,.swiper-button-prev{position:absolute;top:var(--swiper-navigation-top-offset,50%);width:calc(var(--swiper-navigation-size)/ 44 * 27);height:var(--swiper-navigation-size);margin-top:calc(0px - (var(--swiper-navigation-size)/ 2));z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color,var(--swiper-theme-color))}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-next.swiper-button-hidden,.swiper-button-prev.swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled .swiper-button-next,.swiper-navigation-disabled .swiper-button-prev{display:none!important}.swiper-button-next svg,.swiper-button-prev svg{width:100%;height:100%;object-fit:contain;transform-origin:center}.swiper-rtl .swiper-button-next svg,.swiper-rtl .swiper-button-prev svg{transform:rotate(180deg)}.swiper-button-prev,.swiper-rtl .swiper-button-next{left:var(--swiper-navigation-sides-offset,10px);right:auto}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:var(--swiper-navigation-sides-offset,10px);left:auto}.swiper-button-lock{display:none}
@@ -0,0 +1,86 @@
1
+ :root {
2
+ --swiper-navigation-size: 44px;
3
+ /*
4
+ --swiper-navigation-top-offset: 50%;
5
+ --swiper-navigation-sides-offset: 10px;
6
+ --swiper-navigation-color: var(--swiper-theme-color);
7
+ */
8
+ }
9
+ .swiper-button-prev,
10
+ .swiper-button-next {
11
+ position: absolute;
12
+ top: var(--swiper-navigation-top-offset, 50%);
13
+ width: calc(var(--swiper-navigation-size) / 44 * 27);
14
+ height: var(--swiper-navigation-size);
15
+ margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
16
+ z-index: 10;
17
+ cursor: pointer;
18
+ display: flex;
19
+ align-items: center;
20
+ justify-content: center;
21
+ color: var(--swiper-navigation-color, var(--swiper-theme-color));
22
+ }
23
+ .swiper-button-prev.swiper-button-disabled,
24
+ .swiper-button-next.swiper-button-disabled {
25
+ opacity: 0.35;
26
+ cursor: auto;
27
+ pointer-events: none;
28
+ }
29
+ .swiper-button-prev.swiper-button-hidden,
30
+ .swiper-button-next.swiper-button-hidden {
31
+ opacity: 0;
32
+ cursor: auto;
33
+ pointer-events: none;
34
+ }
35
+ .swiper-navigation-disabled .swiper-button-prev,
36
+ .swiper-navigation-disabled .swiper-button-next {
37
+ display: none !important;
38
+ }
39
+ .swiper-button-prev svg,
40
+ .swiper-button-next svg {
41
+ width: 100%;
42
+ height: 100%;
43
+ object-fit: contain;
44
+ transform-origin: center;
45
+ }
46
+ .swiper-rtl .swiper-button-prev svg,
47
+ .swiper-rtl .swiper-button-next svg {
48
+ transform: rotate(180deg);
49
+ }
50
+ .swiper-button-prev,
51
+ .swiper-rtl .swiper-button-next {
52
+ left: var(--swiper-navigation-sides-offset, 10px);
53
+ right: auto;
54
+ }
55
+ .swiper-button-next,
56
+ .swiper-rtl .swiper-button-prev {
57
+ right: var(--swiper-navigation-sides-offset, 10px);
58
+ left: auto;
59
+ }
60
+ .swiper-button-lock {
61
+ display: none;
62
+ }
63
+ /* Navigation font start */
64
+ .swiper-button-prev:after,
65
+ .swiper-button-next:after {
66
+ font-family: swiper-icons;
67
+ font-size: var(--swiper-navigation-size);
68
+ text-transform: none !important;
69
+ letter-spacing: 0;
70
+ font-variant: initial;
71
+ line-height: 1;
72
+ }
73
+ .swiper-button-prev:after,
74
+ .swiper-rtl .swiper-button-next:after {
75
+ content: 'prev';
76
+ }
77
+ .swiper-button-next,
78
+ .swiper-rtl .swiper-button-prev {
79
+ right: var(--swiper-navigation-sides-offset, 10px);
80
+ left: auto;
81
+ }
82
+ .swiper-button-next:after,
83
+ .swiper-rtl .swiper-button-prev:after {
84
+ content: 'next';
85
+ }
86
+ /* Navigation font end */
@@ -0,0 +1,86 @@
1
+ @import url('../swiper-vars.less');
2
+
3
+ :root {
4
+ --swiper-navigation-size: 44px;
5
+ /*
6
+ --swiper-navigation-top-offset: 50%;
7
+ --swiper-navigation-sides-offset: 10px;
8
+ --swiper-navigation-color: var(--swiper-theme-color);
9
+ */
10
+ }
11
+ .swiper-button-prev,
12
+ .swiper-button-next {
13
+ position: absolute;
14
+ top: var(--swiper-navigation-top-offset, 50%);
15
+ width: calc(var(--swiper-navigation-size) / 44 * 27);
16
+ height: var(--swiper-navigation-size);
17
+ margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
18
+ z-index: 10;
19
+ cursor: pointer;
20
+ display: flex;
21
+ align-items: center;
22
+ justify-content: center;
23
+ color: var(--swiper-navigation-color, var(--swiper-theme-color));
24
+ &.swiper-button-disabled {
25
+ opacity: 0.35;
26
+ cursor: auto;
27
+ pointer-events: none;
28
+ }
29
+ &.swiper-button-hidden {
30
+ opacity: 0;
31
+ cursor: auto;
32
+ pointer-events: none;
33
+ }
34
+ .swiper-navigation-disabled & {
35
+ display: none !important;
36
+ }
37
+ svg {
38
+ width: 100%;
39
+ height: 100%;
40
+ object-fit: contain;
41
+ transform-origin: center;
42
+ }
43
+ .swiper-rtl & svg {
44
+ transform: rotate(180deg);
45
+ }
46
+ }
47
+ .swiper-button-prev,
48
+ .swiper-rtl .swiper-button-next {
49
+ left: var(--swiper-navigation-sides-offset, 10px);
50
+ right: auto;
51
+ }
52
+ .swiper-button-next,
53
+ .swiper-rtl .swiper-button-prev {
54
+ right: var(--swiper-navigation-sides-offset, 10px);
55
+ left: auto;
56
+ }
57
+ .swiper-button-lock {
58
+ display: none;
59
+ }
60
+ /* Navigation font start */
61
+ .swiper-button-prev,
62
+ .swiper-button-next {
63
+ &:after {
64
+ font-family: swiper-icons;
65
+ font-size: var(--swiper-navigation-size);
66
+ text-transform: none !important;
67
+ letter-spacing: 0;
68
+ font-variant: initial;
69
+ line-height: 1;
70
+ }
71
+ }
72
+ .swiper-button-prev,
73
+ .swiper-rtl .swiper-button-next {
74
+ &:after {
75
+ content: 'prev';
76
+ }
77
+ }
78
+ .swiper-button-next,
79
+ .swiper-rtl .swiper-button-prev {
80
+ &:after {
81
+ content: 'next';
82
+ }
83
+ right: var(--swiper-navigation-sides-offset, 10px);
84
+ left: auto;
85
+ }
86
+ /* Navigation font end */
@@ -0,0 +1 @@
1
+ :root{--swiper-navigation-size:44px}.swiper-button-next,.swiper-button-prev{position:absolute;top:var(--swiper-navigation-top-offset,50%);width:calc(var(--swiper-navigation-size)/ 44 * 27);height:var(--swiper-navigation-size);margin-top:calc(0px - (var(--swiper-navigation-size)/ 2));z-index:10;cursor:pointer;display:flex;align-items:center;justify-content:center;color:var(--swiper-navigation-color,var(--swiper-theme-color))}.swiper-button-next.swiper-button-disabled,.swiper-button-prev.swiper-button-disabled{opacity:.35;cursor:auto;pointer-events:none}.swiper-button-next.swiper-button-hidden,.swiper-button-prev.swiper-button-hidden{opacity:0;cursor:auto;pointer-events:none}.swiper-navigation-disabled .swiper-button-next,.swiper-navigation-disabled .swiper-button-prev{display:none!important}.swiper-button-next svg,.swiper-button-prev svg{width:100%;height:100%;object-fit:contain;transform-origin:center}.swiper-rtl .swiper-button-next svg,.swiper-rtl .swiper-button-prev svg{transform:rotate(180deg)}.swiper-button-prev,.swiper-rtl .swiper-button-next{left:var(--swiper-navigation-sides-offset,10px);right:auto}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:var(--swiper-navigation-sides-offset,10px);left:auto}.swiper-button-lock{display:none}.swiper-button-next:after,.swiper-button-prev:after{font-family:swiper-icons;font-size:var(--swiper-navigation-size);text-transform:none!important;letter-spacing:0;font-variant:initial;line-height:1}.swiper-button-prev:after,.swiper-rtl .swiper-button-next:after{content:'prev'}.swiper-button-next,.swiper-rtl .swiper-button-prev{right:var(--swiper-navigation-sides-offset,10px);left:auto}.swiper-button-next:after,.swiper-rtl .swiper-button-prev:after{content:'next'}
@@ -0,0 +1,2 @@
1
+ import{c as createElementIfNotDefined}from"../shared/create-element-if-not-defined.min.mjs";import{m as makeElementsArray}from"../shared/utils.min.mjs";function Navigation(a){let{swiper:e,extendParams:n,on:i,emit:t}=a;function s(a){let n;return a&&"string"==typeof a&&e.isElement&&(n=e.el.querySelector(a)||e.hostEl.querySelector(a),n)?n:(a&&("string"==typeof a&&(n=[...document.querySelectorAll(a)]),e.params.uniqueNavElements&&"string"==typeof a&&n&&n.length>1&&1===e.el.querySelectorAll(a).length?n=e.el.querySelector(a):n&&1===n.length&&(n=n[0])),a&&!n?a:n)}function l(a,n){const i=e.params.navigation;(a=makeElementsArray(a)).forEach((a=>{a&&(a.classList[n?"add":"remove"](...i.disabledClass.split(" ")),"BUTTON"===a.tagName&&(a.disabled=n),e.params.watchOverflow&&e.enabled&&a.classList[e.isLocked?"add":"remove"](i.lockClass))}))}function r(){const{nextEl:a,prevEl:n}=e.navigation;if(e.params.loop)return l(n,!1),void l(a,!1);l(n,e.isBeginning&&!e.params.rewind),l(a,e.isEnd&&!e.params.rewind)}function o(a){a.preventDefault(),(!e.isBeginning||e.params.loop||e.params.rewind)&&(e.slidePrev(),t("navigationPrev"))}function d(a){a.preventDefault(),(!e.isEnd||e.params.loop||e.params.rewind)&&(e.slideNext(),t("navigationNext"))}function c(){const a=e.params.navigation;if(e.params.navigation=createElementIfNotDefined(e,e.originalParams.navigation,e.params.navigation,{nextEl:"swiper-button-next",prevEl:"swiper-button-prev"}),!a.nextEl&&!a.prevEl)return;let n=s(a.nextEl),i=s(a.prevEl);Object.assign(e.navigation,{nextEl:n,prevEl:i}),n=makeElementsArray(n),i=makeElementsArray(i);const t=(n,i)=>{n&&n.addEventListener("click","next"===i?d:o),!e.enabled&&n&&n.classList.add(...a.lockClass.split(" "))};n.forEach((a=>t(a,"next"))),i.forEach((a=>t(a,"prev")))}function m(){let{nextEl:a,prevEl:n}=e.navigation;a=makeElementsArray(a),n=makeElementsArray(n);const i=(a,n)=>{a.removeEventListener("click","next"===n?d:o),a.classList.remove(...e.params.navigation.disabledClass.split(" "))};a.forEach((a=>i(a,"next"))),n.forEach((a=>i(a,"prev")))}n({navigation:{nextEl:null,prevEl:null,hideOnClick:!1,disabledClass:"swiper-button-disabled",hiddenClass:"swiper-button-hidden",lockClass:"swiper-button-lock",navigationDisabledClass:"swiper-navigation-disabled"}}),e.navigation={nextEl:null,prevEl:null},i("init",(()=>{!1===e.params.navigation.enabled?p():(c(),r())})),i("toEdge fromEdge lock unlock",(()=>{r()})),i("destroy",(()=>{m()})),i("enable disable",(()=>{let{nextEl:a,prevEl:n}=e.navigation;a=makeElementsArray(a),n=makeElementsArray(n),e.enabled?r():[...a,...n].filter((a=>!!a)).forEach((a=>a.classList.add(e.params.navigation.lockClass)))})),i("click",((a,n)=>{let{nextEl:i,prevEl:s}=e.navigation;i=makeElementsArray(i),s=makeElementsArray(s);const l=n.target;let r=s.includes(l)||i.includes(l);if(e.isElement&&!r){const a=n.path||n.composedPath&&n.composedPath();a&&(r=a.find((a=>i.includes(a)||s.includes(a))))}if(e.params.navigation.hideOnClick&&!r){if(e.pagination&&e.params.pagination&&e.params.pagination.clickable&&(e.pagination.el===l||e.pagination.el.contains(l)))return;let a;i.length?a=i[0].classList.contains(e.params.navigation.hiddenClass):s.length&&(a=s[0].classList.contains(e.params.navigation.hiddenClass)),t(!0===a?"navigationShow":"navigationHide"),[...i,...s].filter((a=>!!a)).forEach((a=>a.classList.toggle(e.params.navigation.hiddenClass)))}}));const p=()=>{e.el.classList.add(...e.params.navigation.navigationDisabledClass.split(" ")),m()};Object.assign(e.navigation,{enable:()=>{e.el.classList.remove(...e.params.navigation.navigationDisabledClass.split(" ")),c(),r()},disable:p,update:r,init:c,destroy:m})}export{Navigation as default};
2
+ //# sourceMappingURL=navigation.min.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"navigation.mjs.mjs","names":["createElementIfNotDefined","makeElementsArray","Navigation","_ref","swiper","extendParams","on","emit","getEl","el","res","isElement","querySelector","hostEl","document","querySelectorAll","params","uniqueNavElements","length","toggleEl","disabled","navigation","forEach","subEl","classList","disabledClass","split","tagName","watchOverflow","enabled","isLocked","lockClass","update","nextEl","prevEl","loop","isBeginning","rewind","isEnd","onPrevClick","e","preventDefault","slidePrev","onNextClick","slideNext","init","originalParams","Object","assign","initButton","dir","addEventListener","add","destroy","destroyButton","removeEventListener","remove","hideOnClick","hiddenClass","navigationDisabledClass","disable","filter","_s","targetEl","target","targetIsButton","includes","path","composedPath","find","pathEl","pagination","clickable","contains","isHidden","toggle","enable"],"sources":["0"],"mappings":"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"}
@@ -0,0 +1,200 @@
1
+ import { c as createElementIfNotDefined } from '../shared/create-element-if-not-defined.mjs';
2
+ import { m as makeElementsArray } from '../shared/utils.mjs';
3
+
4
+ function Navigation(_ref) {
5
+ let {
6
+ swiper,
7
+ extendParams,
8
+ on,
9
+ emit
10
+ } = _ref;
11
+ extendParams({
12
+ navigation: {
13
+ nextEl: null,
14
+ prevEl: null,
15
+ hideOnClick: false,
16
+ disabledClass: 'swiper-button-disabled',
17
+ hiddenClass: 'swiper-button-hidden',
18
+ lockClass: 'swiper-button-lock',
19
+ navigationDisabledClass: 'swiper-navigation-disabled'
20
+ }
21
+ });
22
+ swiper.navigation = {
23
+ nextEl: null,
24
+ prevEl: null
25
+ };
26
+ function getEl(el) {
27
+ let res;
28
+ if (el && typeof el === 'string' && swiper.isElement) {
29
+ res = swiper.el.querySelector(el) || swiper.hostEl.querySelector(el);
30
+ if (res) return res;
31
+ }
32
+ if (el) {
33
+ if (typeof el === 'string') res = [...document.querySelectorAll(el)];
34
+ if (swiper.params.uniqueNavElements && typeof el === 'string' && res && res.length > 1 && swiper.el.querySelectorAll(el).length === 1) {
35
+ res = swiper.el.querySelector(el);
36
+ } else if (res && res.length === 1) {
37
+ res = res[0];
38
+ }
39
+ }
40
+ if (el && !res) return el;
41
+ // if (Array.isArray(res) && res.length === 1) res = res[0];
42
+ return res;
43
+ }
44
+ function toggleEl(el, disabled) {
45
+ const params = swiper.params.navigation;
46
+ el = makeElementsArray(el);
47
+ el.forEach(subEl => {
48
+ if (subEl) {
49
+ subEl.classList[disabled ? 'add' : 'remove'](...params.disabledClass.split(' '));
50
+ if (subEl.tagName === 'BUTTON') subEl.disabled = disabled;
51
+ if (swiper.params.watchOverflow && swiper.enabled) {
52
+ subEl.classList[swiper.isLocked ? 'add' : 'remove'](params.lockClass);
53
+ }
54
+ }
55
+ });
56
+ }
57
+ function update() {
58
+ // Update Navigation Buttons
59
+ const {
60
+ nextEl,
61
+ prevEl
62
+ } = swiper.navigation;
63
+ if (swiper.params.loop) {
64
+ toggleEl(prevEl, false);
65
+ toggleEl(nextEl, false);
66
+ return;
67
+ }
68
+ toggleEl(prevEl, swiper.isBeginning && !swiper.params.rewind);
69
+ toggleEl(nextEl, swiper.isEnd && !swiper.params.rewind);
70
+ }
71
+ function onPrevClick(e) {
72
+ e.preventDefault();
73
+ if (swiper.isBeginning && !swiper.params.loop && !swiper.params.rewind) return;
74
+ swiper.slidePrev();
75
+ emit('navigationPrev');
76
+ }
77
+ function onNextClick(e) {
78
+ e.preventDefault();
79
+ if (swiper.isEnd && !swiper.params.loop && !swiper.params.rewind) return;
80
+ swiper.slideNext();
81
+ emit('navigationNext');
82
+ }
83
+ function init() {
84
+ const params = swiper.params.navigation;
85
+ swiper.params.navigation = createElementIfNotDefined(swiper, swiper.originalParams.navigation, swiper.params.navigation, {
86
+ nextEl: 'swiper-button-next',
87
+ prevEl: 'swiper-button-prev'
88
+ });
89
+ if (!(params.nextEl || params.prevEl)) return;
90
+ let nextEl = getEl(params.nextEl);
91
+ let prevEl = getEl(params.prevEl);
92
+ Object.assign(swiper.navigation, {
93
+ nextEl,
94
+ prevEl
95
+ });
96
+ nextEl = makeElementsArray(nextEl);
97
+ prevEl = makeElementsArray(prevEl);
98
+ const initButton = (el, dir) => {
99
+ if (el) {
100
+ el.addEventListener('click', dir === 'next' ? onNextClick : onPrevClick);
101
+ }
102
+ if (!swiper.enabled && el) {
103
+ el.classList.add(...params.lockClass.split(' '));
104
+ }
105
+ };
106
+ nextEl.forEach(el => initButton(el, 'next'));
107
+ prevEl.forEach(el => initButton(el, 'prev'));
108
+ }
109
+ function destroy() {
110
+ let {
111
+ nextEl,
112
+ prevEl
113
+ } = swiper.navigation;
114
+ nextEl = makeElementsArray(nextEl);
115
+ prevEl = makeElementsArray(prevEl);
116
+ const destroyButton = (el, dir) => {
117
+ el.removeEventListener('click', dir === 'next' ? onNextClick : onPrevClick);
118
+ el.classList.remove(...swiper.params.navigation.disabledClass.split(' '));
119
+ };
120
+ nextEl.forEach(el => destroyButton(el, 'next'));
121
+ prevEl.forEach(el => destroyButton(el, 'prev'));
122
+ }
123
+ on('init', () => {
124
+ if (swiper.params.navigation.enabled === false) {
125
+ // eslint-disable-next-line
126
+ disable();
127
+ } else {
128
+ init();
129
+ update();
130
+ }
131
+ });
132
+ on('toEdge fromEdge lock unlock', () => {
133
+ update();
134
+ });
135
+ on('destroy', () => {
136
+ destroy();
137
+ });
138
+ on('enable disable', () => {
139
+ let {
140
+ nextEl,
141
+ prevEl
142
+ } = swiper.navigation;
143
+ nextEl = makeElementsArray(nextEl);
144
+ prevEl = makeElementsArray(prevEl);
145
+ if (swiper.enabled) {
146
+ update();
147
+ return;
148
+ }
149
+ [...nextEl, ...prevEl].filter(el => !!el).forEach(el => el.classList.add(swiper.params.navigation.lockClass));
150
+ });
151
+ on('click', (_s, e) => {
152
+ let {
153
+ nextEl,
154
+ prevEl
155
+ } = swiper.navigation;
156
+ nextEl = makeElementsArray(nextEl);
157
+ prevEl = makeElementsArray(prevEl);
158
+ const targetEl = e.target;
159
+ let targetIsButton = prevEl.includes(targetEl) || nextEl.includes(targetEl);
160
+ if (swiper.isElement && !targetIsButton) {
161
+ const path = e.path || e.composedPath && e.composedPath();
162
+ if (path) {
163
+ targetIsButton = path.find(pathEl => nextEl.includes(pathEl) || prevEl.includes(pathEl));
164
+ }
165
+ }
166
+ if (swiper.params.navigation.hideOnClick && !targetIsButton) {
167
+ if (swiper.pagination && swiper.params.pagination && swiper.params.pagination.clickable && (swiper.pagination.el === targetEl || swiper.pagination.el.contains(targetEl))) return;
168
+ let isHidden;
169
+ if (nextEl.length) {
170
+ isHidden = nextEl[0].classList.contains(swiper.params.navigation.hiddenClass);
171
+ } else if (prevEl.length) {
172
+ isHidden = prevEl[0].classList.contains(swiper.params.navigation.hiddenClass);
173
+ }
174
+ if (isHidden === true) {
175
+ emit('navigationShow');
176
+ } else {
177
+ emit('navigationHide');
178
+ }
179
+ [...nextEl, ...prevEl].filter(el => !!el).forEach(el => el.classList.toggle(swiper.params.navigation.hiddenClass));
180
+ }
181
+ });
182
+ const enable = () => {
183
+ swiper.el.classList.remove(...swiper.params.navigation.navigationDisabledClass.split(' '));
184
+ init();
185
+ update();
186
+ };
187
+ const disable = () => {
188
+ swiper.el.classList.add(...swiper.params.navigation.navigationDisabledClass.split(' '));
189
+ destroy();
190
+ };
191
+ Object.assign(swiper.navigation, {
192
+ enable,
193
+ disable,
194
+ update,
195
+ init,
196
+ destroy
197
+ });
198
+ }
199
+
200
+ export { Navigation as default };
@@ -0,0 +1,87 @@
1
+ @use '../swiper-vars.scss' as vars;
2
+ @at-root {
3
+ :root {
4
+ --swiper-navigation-size: 44px;
5
+ /*
6
+ --swiper-navigation-top-offset: 50%;
7
+ --swiper-navigation-sides-offset: 10px;
8
+ --swiper-navigation-color: var(--swiper-theme-color);
9
+ */
10
+ }
11
+ }
12
+ .swiper-button-prev,
13
+ .swiper-button-next {
14
+ position: absolute;
15
+ top: var(--swiper-navigation-top-offset, 50%);
16
+ width: calc(var(--swiper-navigation-size) / 44 * 27);
17
+ height: var(--swiper-navigation-size);
18
+ margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
19
+ z-index: 10;
20
+ cursor: pointer;
21
+ display: flex;
22
+ align-items: center;
23
+ justify-content: center;
24
+ color: var(--swiper-navigation-color, var(--swiper-theme-color));
25
+ &.swiper-button-disabled {
26
+ opacity: 0.35;
27
+ cursor: auto;
28
+ pointer-events: none;
29
+ }
30
+ &.swiper-button-hidden {
31
+ opacity: 0;
32
+ cursor: auto;
33
+ pointer-events: none;
34
+ }
35
+ .swiper-navigation-disabled & {
36
+ display: none !important;
37
+ }
38
+ svg {
39
+ width: 100%;
40
+ height: 100%;
41
+ object-fit: contain;
42
+ transform-origin: center;
43
+ }
44
+ .swiper-rtl & svg {
45
+ transform: rotate(180deg);
46
+ }
47
+ }
48
+ .swiper-button-prev,
49
+ .swiper-rtl .swiper-button-next {
50
+ left: var(--swiper-navigation-sides-offset, 10px);
51
+ right: auto;
52
+ }
53
+ .swiper-button-next,
54
+ .swiper-rtl .swiper-button-prev {
55
+ right: var(--swiper-navigation-sides-offset, 10px);
56
+ left: auto;
57
+ }
58
+ .swiper-button-lock {
59
+ display: none;
60
+ }
61
+ /* Navigation font start */
62
+ .swiper-button-prev,
63
+ .swiper-button-next {
64
+ &:after {
65
+ font-family: swiper-icons;
66
+ font-size: var(--swiper-navigation-size);
67
+ text-transform: none !important;
68
+ letter-spacing: 0;
69
+ font-variant: initial;
70
+ line-height: 1;
71
+ }
72
+ }
73
+ .swiper-button-prev,
74
+ .swiper-rtl .swiper-button-next {
75
+ &:after {
76
+ content: 'prev';
77
+ }
78
+ }
79
+ .swiper-button-next,
80
+ .swiper-rtl .swiper-button-prev {
81
+ right: var(--swiper-navigation-sides-offset, 10px);
82
+ left: auto;
83
+ &:after {
84
+ content: 'next';
85
+ }
86
+ }
87
+ /* Navigation font end */