{"version":3,"file":"Src_Scripts_components_thumbnail-swiper_js.534f63491df65ccdd459.js","sources":["webpack://haveselskabet/./Src/Scripts/components/media-swiper.js","webpack://haveselskabet/./Src/Scripts/components/thumbnail-swiper.js"],"sourcesContent":["import Swiper, { Navigation, Scrollbar, Thumbs } from 'swiper/core';\nSwiper.use([Navigation]);\nSwiper.use([Thumbs]);\nSwiper.use([Scrollbar]);\n\nexport default class MediaSwiper {\n constructor(elm, args) {\n if (elm.querySelectorAll('.swiper-slide').length == 0) return;\n\n this.elm = elm;\n this.options = {\n observer: true,\n observeParents: true,\n loadPrevNext: true,\n parallax: true,\n loop: false,\n slidesPerView: 1,\n navigation: {\n nextEl: elm.querySelector('.swiper-button-media-next'),\n prevEl: elm.querySelector('.swiper-button-media-prev'),\n },\n };\n\n if (args.style == 1 || args.style == 3) {\n Swiper.use([Scrollbar]);\n this.options.scrollbar = {\n el: elm.querySelector('.swiper-scrollbar'),\n draggable: true,\n };\n }\n\n if (args.style == 2 || args.style == 4) {\n this.options.allowTouchMove = false;\n this.options.spaceBetween = 4;\n }\n\n if (args.style == 3) {\n this.options.spaceBetween = 20;\n }\n\n if (args.thumbs) {\n this.options.thumbs = {\n swiper: args.thumbs\n }\n }\n\n this.swiper = import('swiper').then(slider => new slider.Swiper(this.elm, this.options));\n\n elm.swiperElm = this.swiper;\n // Hide arrows is there is only one image\n const slides = elm.querySelectorAll('.swiper-slide');\n const arrowContainer = elm.querySelector('.swiper-arrow-wrapper');\n\n if (arrowContainer && slides.length < 2) {\n arrowContainer.style.display = \"none\";\n }\n }\n\n update() {\n this.swiper.update();\n }\n\n destroy() {\n this.swiper.destroy();\n }\n\n\n}\n","import Swiper, { Navigation, Scrollbar } from 'swiper/core';\nimport MediaSwiper from './media-swiper';\nSwiper.use([Navigation]);\n\nexport default class ThumbnailSwiper {\n constructor(elm, args) {\n var thumbnailSwiper = elm.querySelector('[data-thumbnail-swiper]')\n if (thumbnailSwiper.querySelectorAll('.swiper-slide').length == 0) return;\n\n this.elm = thumbnailSwiper;\n this.options = {\n observer: true,\n observeParents: true,\n spaceBetween: 10,\n allowTouchMove: true,\n watchSlidesProgress: true,\n slideToClickedSlide: true,\n slidesPerView: 'auto',\n loop: false,\n navigation: {\n nextEl: thumbnailSwiper.querySelector('.swiper-button-media-next'),\n prevEl: thumbnailSwiper.querySelector('.swiper-button-media-prev'),\n },\n breakpoints: {\n 992: {\n direction: \"vertical\",\n }\n },\n };\n\n var mediaSwiper = elm.querySelector('[data-media-swiper]')\n\n this.swiper = import('swiper').then(slider => { this.thumbnailSwiper = new slider.Swiper(this.elm, this.options) }).then(x => {\n this.mediaSwiper = new MediaSwiper(mediaSwiper, { style: 3, thumbs: this.thumbnailSwiper });\n });\n }\n\n update() {\n this.thumbnailSwiper.update();\n }\n\n destroy() {\n this.thumbnailSwiper.destroy();\n }\n\n\n}\n"],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAEA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AAEA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AAEA;AACA;AACA;AAGA;AAAA;;A;;;;;;;;;;;;;;;;;;;;ACnEA;AACA;AAAA;AAAA;AAAA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAEA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AAEA;AACA;AACA;AAEA;AACA;AACA;AAGA;AAAA;;A;;A","sourceRoot":""}