gitextract_z4g623hj/ ├── .all-contributorsrc ├── .browserslistrc ├── .editorconfig ├── .eslintignore ├── .eslintrc.cjs ├── .gitattributes ├── .github/ │ ├── CONTRIBUTING.md │ ├── FUNDING.yml │ ├── ISSUE_TEMPLATE/ │ │ ├── config.yml │ │ ├── feature-request.yml │ │ ├── swiper_core_issue.yml │ │ ├── swiper_element_issue.yml │ │ ├── swiper_react_issue.yml │ │ └── vue_issue.yml │ ├── PULL_REQUEST_TEMPLATE.md │ ├── dependabot.yml │ ├── lock.yml │ ├── stale.yml │ └── workflows/ │ ├── build.yml │ ├── formatting.yml │ ├── issue-close-require.yml │ ├── issue-labeled.yml │ └── lint.yml ├── .gitignore ├── .lintstagedrc ├── .npmignore ├── .prettierignore ├── .prettierrc ├── .vscode/ │ └── settings.json ├── BACKERS.md ├── CHANGELOG.md ├── CODE_CONTRIBUTORS.md ├── CODE_OF_CONDUCT.md ├── CONTRIBUTING.md ├── LICENSE ├── README.md ├── TODO.md ├── babel.config.json ├── demos/ │ ├── 010-default.html │ ├── 020-navigation.html │ ├── 030-pagination.html │ ├── 040-pagination-dynamic.html │ ├── 050-pagination-progress.html │ ├── 060-pagination-fraction.html │ ├── 070-pagination-custom.html │ ├── 080-scrollbar.html │ ├── 090-vertical.html │ ├── 100-space-between.html │ ├── 110-slides-per-view.html │ ├── 120-slides-per-view-auto.html │ ├── 125-snap-to-slide-edge.html │ ├── 130-centered.html │ ├── 140-centered-auto.html │ ├── 145-css-mode.html │ ├── 150-freemode.html │ ├── 160-scroll-container.html │ ├── 170-slides-per-column.html │ ├── 180-nested.html │ ├── 190-grab-cursor.html │ ├── 200-infinite-loop.html │ ├── 210-infinite-loop-with-slides-per-group.html │ ├── 211-slides-per-group-skip.html │ ├── 220-effect-fade.html │ ├── 230-effect-cube.html │ ├── 240-effect-coverflow.html │ ├── 250-effect-flip.html │ ├── 255-effect-cards.html │ ├── 257-effect-creative.html │ ├── 260-keyboard-control.html │ ├── 270-mousewheel-control.html │ ├── 280-autoplay.html │ ├── 290-dynamic-slides.html │ ├── 300-thumbs-gallery.html │ ├── 310-thumbs-gallery-loop.html │ ├── 320-multiple-swipers.html │ ├── 330-hash-navigation.html │ ├── 340-history.html │ ├── 350-rtl.html │ ├── 360-parallax.html │ ├── 370-lazy-load-images.html │ ├── 380-responsive-breakpoints.html │ ├── 381-ratio-breakpoints.html │ ├── 390-autoheight.html │ ├── 400-zoom.html │ ├── 410-virtual-slides.html │ ├── 420-custom-plugin.html │ ├── 430-slideable-menu.html │ ├── 440-change-direction.html │ ├── 450-watchSlidesVisibility.html │ ├── index.html │ └── vite.config.js ├── package.json ├── playground/ │ ├── core/ │ │ ├── index.html │ │ └── vite.config.js │ ├── element/ │ │ ├── index.html │ │ └── vite.config.js │ ├── react/ │ │ ├── App.jsx │ │ ├── index.html │ │ ├── main.js │ │ └── vite.config.js │ └── vue/ │ ├── App.vue │ ├── index.html │ ├── innerComp.vue │ ├── main.js │ └── vite.config.js ├── scripts/ │ ├── build-config.js │ ├── build-modules.js │ ├── build-sponsors.js │ ├── build-styles.js │ ├── build-types.js │ ├── build.js │ ├── release.js │ ├── utils/ │ │ ├── autoprefixer.js │ │ ├── banner.js │ │ ├── get-element-styles.js │ │ ├── helper.js │ │ ├── isProd.js │ │ ├── less.js │ │ ├── minify-css.js │ │ ├── minify.js │ │ ├── output-dir.js │ │ └── unwrap-css.js │ └── watch.js └── src/ ├── components-shared/ │ ├── get-changed-params.mjs │ ├── get-element-params.mjs │ ├── get-params.mjs │ ├── mount-swiper.mjs │ ├── params-list.mjs │ ├── update-on-virtual-data.mjs │ ├── update-swiper.mjs │ └── utils.mjs ├── copy/ │ ├── LICENSE │ ├── README.md │ └── package.json ├── core/ │ ├── breakpoints/ │ │ ├── getBreakpoint.mjs │ │ ├── index.mjs │ │ └── setBreakpoint.mjs │ ├── check-overflow/ │ │ └── index.mjs │ ├── classes/ │ │ ├── addClasses.mjs │ │ ├── index.mjs │ │ └── removeClasses.mjs │ ├── core.mjs │ ├── defaults.mjs │ ├── events/ │ │ ├── index.mjs │ │ ├── onClick.mjs │ │ ├── onDocumentTouchStart.mjs │ │ ├── onLoad.mjs │ │ ├── onResize.mjs │ │ ├── onScroll.mjs │ │ ├── onTouchEnd.mjs │ │ ├── onTouchMove.mjs │ │ └── onTouchStart.mjs │ ├── events-emitter.mjs │ ├── grab-cursor/ │ │ ├── index.mjs │ │ ├── setGrabCursor.mjs │ │ └── unsetGrabCursor.mjs │ ├── loop/ │ │ ├── index.mjs │ │ ├── loopCreate.mjs │ │ ├── loopDestroy.mjs │ │ └── loopFix.mjs │ ├── moduleExtendParams.mjs │ ├── modules/ │ │ ├── observer/ │ │ │ └── observer.mjs │ │ └── resize/ │ │ └── resize.mjs │ ├── slide/ │ │ ├── index.mjs │ │ ├── slideNext.mjs │ │ ├── slidePrev.mjs │ │ ├── slideReset.mjs │ │ ├── slideTo.mjs │ │ ├── slideToClickedSlide.mjs │ │ ├── slideToClosest.mjs │ │ └── slideToLoop.mjs │ ├── transition/ │ │ ├── index.mjs │ │ ├── setTransition.mjs │ │ ├── transitionEmit.mjs │ │ ├── transitionEnd.mjs │ │ └── transitionStart.mjs │ ├── translate/ │ │ ├── getTranslate.mjs │ │ ├── index.mjs │ │ ├── maxTranslate.mjs │ │ ├── minTranslate.mjs │ │ ├── setTranslate.mjs │ │ └── translateTo.mjs │ └── update/ │ ├── index.mjs │ ├── updateActiveIndex.mjs │ ├── updateAutoHeight.mjs │ ├── updateClickedSlide.mjs │ ├── updateProgress.mjs │ ├── updateSize.mjs │ ├── updateSlides.mjs │ ├── updateSlidesClasses.mjs │ ├── updateSlidesOffset.mjs │ └── updateSlidesProgress.mjs ├── modules/ │ ├── a11y/ │ │ ├── a11y.css │ │ └── a11y.mjs │ ├── autoplay/ │ │ ├── autoplay.css │ │ └── autoplay.mjs │ ├── controller/ │ │ ├── controller.css │ │ └── controller.mjs │ ├── effect-cards/ │ │ ├── effect-cards.css │ │ └── effect-cards.mjs │ ├── effect-coverflow/ │ │ ├── effect-coverflow.css │ │ └── effect-coverflow.mjs │ ├── effect-creative/ │ │ ├── effect-creative.css │ │ └── effect-creative.mjs │ ├── effect-cube/ │ │ ├── effect-cube.css │ │ └── effect-cube.mjs │ ├── effect-fade/ │ │ ├── effect-fade.css │ │ └── effect-fade.mjs │ ├── effect-flip/ │ │ ├── effect-flip.css │ │ └── effect-flip.mjs │ ├── free-mode/ │ │ ├── free-mode.css │ │ └── free-mode.mjs │ ├── grid/ │ │ ├── grid.css │ │ └── grid.mjs │ ├── hash-navigation/ │ │ ├── hash-navigation.css │ │ └── hash-navigation.mjs │ ├── history/ │ │ ├── history.css │ │ └── history.mjs │ ├── keyboard/ │ │ ├── keyboard.css │ │ └── keyboard.mjs │ ├── manipulation/ │ │ ├── manipulation.css │ │ ├── manipulation.mjs │ │ └── methods/ │ │ ├── addSlide.mjs │ │ ├── appendSlide.mjs │ │ ├── prependSlide.mjs │ │ ├── removeAllSlides.mjs │ │ └── removeSlide.mjs │ ├── mousewheel/ │ │ ├── mousewheel.css │ │ └── mousewheel.mjs │ ├── navigation/ │ │ ├── navigation.css │ │ └── navigation.mjs │ ├── pagination/ │ │ ├── pagination.css │ │ └── pagination.mjs │ ├── parallax/ │ │ ├── parallax.css │ │ └── parallax.mjs │ ├── scrollbar/ │ │ ├── scrollbar.css │ │ └── scrollbar.mjs │ ├── thumbs/ │ │ ├── thumbs.css │ │ └── thumbs.mjs │ ├── virtual/ │ │ ├── virtual.css │ │ └── virtual.mjs │ └── zoom/ │ ├── zoom.css │ └── zoom.mjs ├── react/ │ ├── context.mjs │ ├── get-children.mjs │ ├── swiper-slide.mjs │ ├── swiper.mjs │ ├── use-isomorphic-layout-effect.mjs │ └── virtual.mjs ├── shared/ │ ├── classes-to-selector.mjs │ ├── classes-to-tokens.mjs │ ├── create-element-if-not-defined.mjs │ ├── create-shadow.mjs │ ├── effect-init.mjs │ ├── effect-target.mjs │ ├── effect-virtual-transition-end.mjs │ ├── get-browser.mjs │ ├── get-device.mjs │ ├── get-support.mjs │ ├── process-lazy-preloader.mjs │ └── utils.mjs ├── swiper-bundle.mjs ├── swiper-effect-utils.d.ts ├── swiper-effect-utils.mjs ├── swiper-element.d.ts ├── swiper-element.mjs ├── swiper-react.d.ts ├── swiper-react.mjs ├── swiper-vars.less ├── swiper-vue.d.ts ├── swiper-vue.mjs ├── swiper.css ├── swiper.d.ts ├── swiper.mjs ├── types/ │ ├── index.d.ts │ ├── modules/ │ │ ├── a11y.d.ts │ │ ├── autoplay.d.ts │ │ ├── controller.d.ts │ │ ├── effect-cards.d.ts │ │ ├── effect-coverflow.d.ts │ │ ├── effect-creative.d.ts │ │ ├── effect-cube.d.ts │ │ ├── effect-fade.d.ts │ │ ├── effect-flip.d.ts │ │ ├── free-mode.d.ts │ │ ├── grid.d.ts │ │ ├── hash-navigation.d.ts │ │ ├── history.d.ts │ │ ├── index.d.ts │ │ ├── keyboard.d.ts │ │ ├── manipulation.d.ts │ │ ├── mousewheel.d.ts │ │ ├── navigation.d.ts │ │ ├── pagination.d.ts │ │ ├── parallax.d.ts │ │ ├── public-api.d.ts │ │ ├── scrollbar.d.ts │ │ ├── thumbs.d.ts │ │ ├── virtual.d.ts │ │ └── zoom.d.ts │ ├── shared.d.ts │ ├── swiper-class.d.ts │ ├── swiper-events.d.ts │ └── swiper-options.d.ts └── vue/ ├── context.mjs ├── get-children.mjs ├── swiper-slide.mjs ├── swiper.mjs └── virtual.mjs