{"version":3,"sources":["components/swiper.js"],"names":["dmx","Component","constructor","node","parent","this","dynamic","hasAttribute","updateData","bind","BaseComponent","call","initialData","index","total","isBeginning","isEnd","attributes","vertical","type","Boolean","default","speed","Number","auto-height","effect","String","initial-slide","space-between","slides-per-view","slides-per-group","space-between-sm","slides-per-view-sm","slides-per-group-sm","space-between-md","slides-per-view-md","slides-per-group-md","space-between-lg","slides-per-view-lg","slides-per-group-lg","space-between-xl","slides-per-view-xl","slides-per-group-xl","centered-slides","slides-offset-before","slides-offset-after","grab-cursor","free-mode","free-mode-sticky","loop","loop-fill","pagination","navigation","scrollbar","autoplay","parallax","keyboard","mousewheel","observer","slides","Array","methods","slideNext","runCallbacks","swiper","slidePrev","slideTo","slideToLoop","slideReset","slideToClosest","autoplayStart","start","autoplayStop","stop","update","events","change","Event","rendered","render","template","innerHTML","container","$node","classList","add","wrapper","document","createElement","className","buttonPrev","buttonNext","appendChild","props","JSON","stringify","children","splice","forEach","child","$destroy","repeatItems","length","RepeatItem","fragment","createDocumentFragment","i","cloneNode","$nodes","$parse","push","dom","remove","params","direction","autoHeight","spaceBetween","slidesPerView","slidesPerGroup","centeredSlides","slidesOffsetBefore","slidesOffsetAfter","grabCursor","freeMode","freeModeSticky","loopFillGroupWithBlank","el","clickable","prevEl","nextEl","draggable","snapOnRelease","breakpointsInverse","breakpoints","observeParents","initialSlide","getBreakpointProps","window","wapplerDesignView","simulateTouch","self","requestAnimationFrame","destroy","Swiper","on","dispatchEvent","updated","destroyed","updateSize","suffix","loopedSlides","set","realIndex"],"mappings":";;;;;;AAAAA,IAAAC,UAAA,SAAA,CAEAC,YAAA,SAAAC,EAAAC,GACAC,KAAAC,QAAAH,EAAAI,aAAA,mBACAF,KAAAG,WAAAH,KAAAG,WAAAC,KAAAJ,MACAL,IAAAU,cAAAC,KAAAN,KAAAF,EAAAC,IAGAQ,YAAA,CACAC,MAAA,EACAC,MAAA,EACAC,aAAA,EACAC,OAAA,GAGAC,WAAA,CAIAC,SAAA,CACAC,KAAAC,QACAC,SAAA,GAGAC,MAAA,CACAH,KAAAI,OACAF,QAAA,KAGAG,cAAA,CACAL,KAAAC,QACAC,SAAA,GAGAI,OAAA,CACAN,KAAAO,OACAL,QAAA,SAEAM,gBAAA,CACAR,KAAAI,OACAF,QAAA,MAIAO,gBAAA,CACAT,KAAAI,OACAF,QAAA,GAGAQ,kBAAA,CACAV,KAAAO,OACAL,QAAA,GAGAS,mBAAA,CACAX,KAAAI,OACAF,QAAA,GAGAU,mBAAA,CACAZ,KAAAI,OACAF,QAAA,MAGAW,qBAAA,CACAb,KAAAO,OACAL,QAAA,MAGAY,sBAAA,CACAd,KAAAI,OACAF,QAAA,MAGAa,mBAAA,CACAf,KAAAI,OACAF,QAAA,MAGAc,qBAAA,CACAhB,KAAAO,OACAL,QAAA,MAGAe,sBAAA,CACAjB,KAAAI,OACAF,QAAA,MAGAgB,mBAAA,CACAlB,KAAAI,OACAF,QAAA,MAGAiB,qBAAA,CACAnB,KAAAO,OACAL,QAAA,MAGAkB,sBAAA,CACApB,KAAAI,OACAF,QAAA,MAGAmB,mBAAA,CACArB,KAAAI,OACAF,QAAA,MAGAoB,qBAAA,CACAtB,KAAAO,OACAL,QAAA,MAGAqB,sBAAA,CACAvB,KAAAI,OACAF,QAAA,MAGAsB,kBAAA,CACAxB,KAAAC,QACAC,SAAA,GAGAuB,uBAAA,CACAzB,KAAAI,OACAF,QAAA,GAGAwB,sBAAA,CACA1B,KAAAI,OACAF,QAAA,GAKAyB,cAAA,CACA3B,KAAAC,QACAC,SAAA,GAKA0B,YAAA,CACA5B,KAAAC,QACAC,SAAA,GAGA2B,mBAAA,CACA7B,KAAAC,QACAC,SAAA,GAKA4B,KAAA,CACA9B,KAAAC,QACAC,SAAA,GAGA6B,YAAA,CACA/B,KAAAC,QACAC,SAAA,GAKA8B,WAAA,CACAhC,KAAAO,OACAL,QAAA,MAGA+B,WAAA,CACAjC,KAAAC,QACAC,SAAA,GAGAgC,UAAA,CACAlC,KAAAC,QACAC,SAAA,GAGAiC,SAAA,CACAnC,KAAAC,QACAC,SAAA,GAGAkC,SAAA,CACApC,KAAAC,QACAC,SAAA,GAGAmC,SAAA,CACArC,KAAAC,QACAC,SAAA,GAGAoC,WAAA,CACAtC,KAAAC,QACAC,SAAA,GAGAqC,SAAA,CACAvC,KAAAC,QACAC,SAAA,GAKAsC,OAAA,CACAxC,KAAAyC,MACAvC,SAAA,IAIAwC,QAAA,CACAC,UAAA,SAAAxC,EAAAyC,GACA1D,KAAA2D,OAAAF,UAAAxC,EAAAyC,IAGAE,UAAA,SAAA3C,EAAAyC,GACA1D,KAAA2D,OAAAC,UAAA3C,EAAAyC,IAGAG,QAAA,SAAArD,EAAAS,EAAAyC,GACA1D,KAAA2D,OAAAE,QAAArD,EAAAS,EAAAyC,IAGAI,YAAA,SAAAtD,EAAAS,EAAAyC,GACA1D,KAAA2D,OAAAG,YAAAtD,EAAAS,EAAAyC,IAGAK,WAAA,SAAA9C,EAAAyC,GACA1D,KAAA2D,OAAAI,WAAA9C,EAAAyC,IAGAM,eAAA,SAAA/C,EAAAyC,GACA1D,KAAA2D,OAAAK,eAAA/C,EAAAyC,IAGAO,cAAA,WACAjE,KAAA2D,OAAAV,SAAAiB,SAGAC,aAAA,WACAnE,KAAA2D,OAAAV,SAAAmB,QAGAC,OAAA,WACArE,KAAAqE,OAAA,MAIAC,OAAA,CACAC,OAAAC,MACAC,SAAAD,OAGAE,OAAA,SAAA5E,GACAE,KAAA2E,SAAA7E,EAAA8E,UAEA5E,KAAA6E,UAAA7E,KAAA8E,MAAAhF,EACAE,KAAA6E,UAAAE,UAAAC,IAAA,oBACAhF,KAAA6E,UAAAD,UAAA,GAEA5E,KAAAiF,QAAAC,SAAAC,cAAA,OACAnF,KAAAiF,QAAAG,UAAA,iBAEApF,KAAA8C,WAAAoC,SAAAC,cAAA,OACAnF,KAAA8C,WAAAsC,UAAA,oBAEApF,KAAAqF,WAAAH,SAAAC,cAAA,OACAnF,KAAAqF,WAAAD,UAAA,qBAEApF,KAAAsF,WAAAJ,SAAAC,cAAA,OACAnF,KAAAsF,WAAAF,UAAA,qBAEApF,KAAAgD,UAAAkC,SAAAC,cAAA,OACAnF,KAAAgD,UAAAoC,UAAA,mBAEApF,KAAA6E,UAAAU,YAAAvF,KAAAiF,SAEAjF,KAAAqE,OAAA,KAGAA,OAAA,SAAAmB,GACA,GAAAC,KAAAC,UAAAF,IAAAC,KAAAC,UAAA1F,KAAAwF,OAAA,CACA,GAAAxF,KAAAC,SAIA,GAAAwF,KAAAC,UAAAF,EAAAlC,SAAAmC,KAAAC,UAAA1F,KAAAwF,MAAAlC,QAAA,CACAtD,KAAAiF,QAAAL,UAAA,GACA5E,KAAA2F,SAAAC,OAAA,GAAAC,QAAA,SAAAC,GACAA,EAAAC,aAGA,IAAAzC,EAAA3D,IAAAqG,YAAAhG,KAAAwF,MAAAlC,QAEA,GAAAA,EAAA2C,OAAA,CACA,IAAAtB,EAAAO,SAAAC,cAAA,OACAR,EAAAC,UAAA5E,KAAA2E,SAKA,IAHA,IAAAuB,EAAAvG,IAAAC,UAAA,eACAuG,EAAAjB,SAAAkB,yBAEAC,EAAA,EAAAA,EAAA/C,EAAA2C,OAAAI,IAAA,CACA,IAAAP,EAAA,IAAAI,EAAAvB,EAAA2B,WAAA,GAAAtG,KAAAsD,EAAA+C,IACAP,EAAAS,OAAAV,QAAA,SAAA/F,GACAqG,EAAAZ,YAAAzF,GACAgG,EAAAU,OAAA1G,KAEAE,KAAA2F,SAAAc,KAAAX,GAGA9F,KAAAiF,QAAAM,YAAAY,UA3BAnG,KAAAiF,QAAAL,UAAA5E,KAAA2E,SACA3E,KAAAwG,OAAAxG,KAAAiF,SA+BAjF,KAAAwF,MAAA1C,WACA9C,KAAA6E,UAAAU,YAAAvF,KAAA8C,YAEAnD,IAAA+G,IAAAC,OAAA3G,KAAA8C,YAGA9C,KAAAwF,MAAAzC,YACA/C,KAAA6E,UAAAU,YAAAvF,KAAAqF,YACArF,KAAA6E,UAAAU,YAAAvF,KAAAsF,aAEA3F,IAAA+G,IAAAC,OAAA,CAAA3G,KAAAqF,WAAArF,KAAAsF,aAGAtF,KAAAwF,MAAAxC,UACAhD,KAAA6E,UAAAU,YAAAvF,KAAAgD,WAEArD,IAAA+G,IAAAC,OAAA3G,KAAAgD,WAGA,IAAA4D,EAAA,CACAC,UAAA7G,KAAAwF,MAAA3E,SAAA,WAAA,aACAI,MAAAjB,KAAAwF,MAAAvE,MACA6F,WAAA9G,KAAAwF,MAAA,eACApE,OAAApB,KAAAwF,MAAApE,OACA2F,aAAA/G,KAAAwF,MAAA,iBACAwB,cAAAhH,KAAAwF,MAAA,mBACAyB,eAAAjH,KAAAwF,MAAA,oBACA0B,eAAAlH,KAAAwF,MAAA,mBACA2B,mBAAAnH,KAAAwF,MAAA,wBACA4B,kBAAApH,KAAAwF,MAAA,uBACA6B,WAAArH,KAAAwF,MAAA,eACA8B,SAAAtH,KAAAwF,MAAA,aACA+B,eAAAvH,KAAAwF,MAAA,oBACA5C,KAAA5C,KAAAwF,MAAA5C,KACA4E,uBAAAxH,KAAAwF,MAAA,aACA1C,WAAA,CACA2E,GAAAzH,KAAAwF,MAAA1C,WAAA,qBAAA,KACAhC,KAAAd,KAAAwF,MAAA1C,WACA4E,WAAA,GAEA3E,WAAA,CACA4E,OAAA3H,KAAAwF,MAAAzC,WAAA,sBAAA,KACA6E,OAAA5H,KAAAwF,MAAAzC,WAAA,sBAAA,MAEAC,UAAA,CACAyE,GAAAzH,KAAAwF,MAAAxC,UAAA,oBAAA,KACA6E,WAAA,EACAC,eAAA,GAEA7E,SAAAjD,KAAAwF,MAAAvC,SACAC,SAAAlD,KAAAwF,MAAAtC,SACAC,SAAAnD,KAAAwF,MAAArC,SACAC,WAAApD,KAAAwF,MAAApC,WACA2E,oBAAA,EACAC,YAAA,GACA3E,SAAArD,KAAAwF,MAAAnC,SACA4E,eAAAjI,KAAAwF,MAAAnC,SACA6E,aAAAlI,KAAAwF,MAAA,kBAGAxF,KAAA+G,aAAA/G,KAAAwF,MAAA,iBACAxF,KAAAgH,cAAAhH,KAAAwF,MAAA,mBACAxF,KAAAiH,eAAAjH,KAAAwF,MAAA,oBAEAoB,EAAAoB,YAAA,KAAAhI,KAAAmI,mBAAA,MACAvB,EAAAoB,YAAA,KAAAhI,KAAAmI,mBAAA,MACAvB,EAAAoB,YAAA,KAAAhI,KAAAmI,mBAAA,MACAvB,EAAAoB,YAAA,MAAAhI,KAAAmI,mBAAA,MAEAC,OAAAC,oBACAzB,EAAA0B,eAAA,GAIA,IAAAC,EAAAvI,KACAwI,sBAAA,WACAD,EAAA5E,QAAA4E,EAAA5E,OAAA8E,UACA,IAAA9E,EAAA4E,EAAA5E,OAAA,IAAA+E,OAAAH,EAAA1D,UAAA+B,GACAjD,EAAAgF,GAAA,iBAAAJ,EAAApI,YACAwD,EAAAgF,GAAA,cAAAJ,EAAApI,YACAwD,EAAAgF,GAAA,cAAAJ,EAAAK,cAAAxI,KAAAmI,EAAA,WACAA,EAAApI,aACAoI,EAAAK,cAAA,gBAKAC,QAAA,WACA7I,KAAA2D,SAAA3D,KAAA2D,OAAAmF,WACA9I,KAAA2D,OAAAoF,cAIAZ,mBAAA,SAAAa,GAaA,OAZA,MAAAhJ,KAAAwF,MAAA,iBAAAwD,KACAhJ,KAAA+G,aAAA/G,KAAAwF,MAAA,iBAAAwD,IAGA,MAAAhJ,KAAAwF,MAAA,mBAAAwD,KACAhJ,KAAAgH,cAAAhH,KAAAwF,MAAA,mBAAAwD,IAGA,MAAAhJ,KAAAwF,MAAA,oBAAAwD,KACAhJ,KAAAiH,eAAAjH,KAAAwF,MAAA,oBAAAwD,IAGA,CACAjC,aAAA/G,KAAA+G,aACAC,cAAAhH,KAAAgH,cACAC,eAAAjH,KAAAiH,iBAIA9G,WAAA,WACA,GAAAH,KAAA2D,SAAA3D,KAAA2D,OAAAmF,UAAA,CACA,IAAArI,EAAAT,KAAA2D,OAAAsF,cAAAjJ,KAAA2D,OAAAL,OAAA2C,OAEAjG,KAAAkJ,IAAA,QAAA,EAAAzI,EAAAT,KAAA2D,OAAAwF,UAAA1I,EAAA,GACAT,KAAAkJ,IAAA,QAAAzI,GACAT,KAAAkJ,IAAA,cAAAlJ,KAAA2D,OAAAjD,aACAV,KAAAkJ,IAAA,QAAAlJ,KAAA2D,OAAAhD","file":"../dmxSwiper/dmxSwiper.js","sourcesContent":["dmx.Component('swiper', {\r\n\r\n constructor: function(node, parent) {\r\n this.dynamic = node.hasAttribute('dmx-bind:slides');\r\n this.updateData = this.updateData.bind(this)\r\n dmx.BaseComponent.call(this, node, parent);\r\n },\r\n\r\n initialData: {\r\n index: 0,\r\n total: 0,\r\n isBeginning: false,\r\n isEnd: false\r\n },\r\n\r\n attributes: {\r\n\r\n // General\r\n\r\n vertical: {\r\n type: Boolean,\r\n default: false\r\n },\r\n\r\n speed: {\r\n type: Number,\r\n default: 300 // Duration of transition between slides (in ms)\r\n },\r\n\r\n 'auto-height': {\r\n type: Boolean,\r\n default: false\r\n },\r\n\r\n effect: {\r\n type: String,\r\n default: 'slide' // slide, fade, cube, coverflow, flip\r\n },\r\n'initial-slide': {\r\n\t\t\ttype: Number,\r\n default: null\r\n\t\t},\r\n // Slides Grid\r\n\r\n 'space-between': {\r\n type: Number,\r\n default: 0\r\n },\r\n\r\n 'slides-per-view': {\r\n type: String,\r\n default: 1\r\n },\r\n\r\n 'slides-per-group': {\r\n type: Number,\r\n default: 1\r\n },\r\n\r\n 'space-between-sm': {\r\n type: Number,\r\n default: null\r\n },\r\n\r\n 'slides-per-view-sm': {\r\n type: String,\r\n default: null\r\n },\r\n\r\n 'slides-per-group-sm': {\r\n type: Number,\r\n default: null\r\n },\r\n\r\n 'space-between-md': {\r\n type: Number,\r\n default: null\r\n },\r\n\r\n 'slides-per-view-md': {\r\n type: String,\r\n default: null\r\n },\r\n\r\n 'slides-per-group-md': {\r\n type: Number,\r\n default: null\r\n },\r\n\r\n 'space-between-lg': {\r\n type: Number,\r\n default: null\r\n },\r\n\r\n 'slides-per-view-lg': {\r\n type: String,\r\n default: null\r\n },\r\n\r\n 'slides-per-group-lg': {\r\n type: Number,\r\n default: null\r\n },\r\n\r\n 'space-between-xl': {\r\n type: Number,\r\n default: null\r\n },\r\n\r\n 'slides-per-view-xl': {\r\n type: String,\r\n default: null\r\n },\r\n\r\n 'slides-per-group-xl': {\r\n type: Number,\r\n default: null\r\n },\r\n\r\n 'centered-slides': {\r\n type: Boolean,\r\n default: false\r\n },\r\n\r\n 'slides-offset-before': {\r\n type: Number,\r\n default: 0\r\n },\r\n\r\n 'slides-offset-after': {\r\n type: Number,\r\n default: 0\r\n },\r\n\r\n // Grab Cursor\r\n\r\n 'grab-cursor': {\r\n type: Boolean,\r\n default: false\r\n },\r\n\r\n // Freemode\r\n\r\n 'free-mode': {\r\n type: Boolean,\r\n default: false\r\n },\r\n\r\n 'free-mode-sticky': {\r\n type: Boolean,\r\n default: false\r\n },\r\n\r\n // Loop\r\n\r\n loop: {\r\n type: Boolean,\r\n default: false\r\n },\r\n\r\n 'loop-fill': { // loopFillGroupWithBlank\r\n type: Boolean,\r\n default: false\r\n },\r\n\r\n // Components\r\n\r\n pagination: {\r\n type: String,\r\n default: null // bullets, fraction, progressbar\r\n },\r\n\r\n navigation: {\r\n type: Boolean,\r\n default: false\r\n },\r\n\r\n scrollbar: {\r\n type: Boolean,\r\n default: false\r\n },\r\n\r\n autoplay: {\r\n type: Boolean,\r\n default: false\r\n },\r\n\r\n parallax: {\r\n type: Boolean,\r\n default: false\r\n },\r\n\r\n keyboard: {\r\n type: Boolean,\r\n default: false\r\n },\r\n\r\n mousewheel: {\r\n type: Boolean,\r\n default: false\r\n },\r\n\r\n observer: {\r\n type: Boolean,\r\n default: false\r\n },\r\n\t\t\r\n // Dynamic Data\r\n\r\n slides: {\r\n type: Array,\r\n default: false\r\n }\r\n },\r\n\r\n methods: {\r\n slideNext: function(speed, runCallbacks) {\r\n this.swiper.slideNext(speed, runCallbacks);\r\n },\r\n\r\n slidePrev: function(speed, runCallbacks) {\r\n this.swiper.slidePrev(speed, runCallbacks);\r\n },\r\n\r\n slideTo: function(index, speed, runCallbacks) {\r\n this.swiper.slideTo(index, speed, runCallbacks);\r\n },\r\n\r\n slideToLoop: function(index, speed, runCallbacks) {\r\n this.swiper.slideToLoop(index, speed, runCallbacks);\r\n },\r\n\r\n slideReset: function(speed, runCallbacks) {\r\n this.swiper.slideReset(speed, runCallbacks);\r\n },\r\n\r\n slideToClosest: function(speed, runCallbacks) {\r\n this.swiper.slideToClosest(speed, runCallbacks);\r\n },\r\n\r\n autoplayStart: function() {\r\n this.swiper.autoplay.start();\r\n },\r\n\r\n autoplayStop: function() {\r\n this.swiper.autoplay.stop();\r\n },\r\n\r\n update: function() {\r\n this.update({});\r\n }\r\n },\r\n\r\n events: {\r\n change: Event,\r\n rendered: Event\r\n },\r\n\r\n render: function(node) {\r\n this.template = node.innerHTML;\r\n\r\n this.container = this.$node = node;\r\n this.container.classList.add('swiper-container');\r\n this.container.innerHTML = '';\r\n\r\n this.wrapper = document.createElement('div');\r\n this.wrapper.className = 'swiper-wrapper';\r\n\r\n this.pagination = document.createElement('div');\r\n this.pagination.className = 'swiper-pagination';\r\n\r\n this.buttonPrev = document.createElement('div');\r\n this.buttonPrev.className = 'swiper-button-prev';\r\n\r\n this.buttonNext = document.createElement('div');\r\n this.buttonNext.className = 'swiper-button-next';\r\n\r\n this.scrollbar = document.createElement('div');\r\n this.scrollbar.className = 'swiper-scrollbar';\r\n\r\n this.container.appendChild(this.wrapper);\r\n\r\n this.update({});\r\n },\r\n\r\n update: function(props) {\r\n if (JSON.stringify(props) != JSON.stringify(this.props)) {\r\n if (!this.dynamic) {\r\n this.wrapper.innerHTML = this.template;\r\n this.$parse(this.wrapper);\r\n } else {\r\n if (JSON.stringify(props.slides) != JSON.stringify(this.props.slides)) {\r\n this.wrapper.innerHTML = '';\r\n this.children.splice(0).forEach(function(child) {\r\n child.$destroy();\r\n });\r\n\r\n var slides = dmx.repeatItems(this.props.slides);\r\n\r\n if (slides.length) {\r\n var template = document.createElement('div');\r\n template.innerHTML = this.template;\r\n\r\n var RepeatItem = dmx.Component('repeat-item');\r\n var fragment = document.createDocumentFragment();\r\n\r\n for (var i = 0; i < slides.length; i++) {\r\n var child = new RepeatItem(template.cloneNode(true), this, slides[i]);\r\n child.$nodes.forEach(function(node) {\r\n fragment.appendChild(node);\r\n child.$parse(node);\r\n });\r\n this.children.push(child);\r\n }\r\n\r\n this.wrapper.appendChild(fragment);\r\n }\r\n }\r\n }\r\n\r\n if (this.props.pagination) {\r\n this.container.appendChild(this.pagination);\r\n } else {\r\n dmx.dom.remove(this.pagination);\r\n }\r\n\r\n if (this.props.navigation) {\r\n this.container.appendChild(this.buttonPrev);\r\n this.container.appendChild(this.buttonNext);\r\n } else {\r\n dmx.dom.remove([this.buttonPrev, this.buttonNext]);\r\n }\r\n\r\n if (this.props.scrollbar) {\r\n this.container.appendChild(this.scrollbar);\r\n } else {\r\n dmx.dom.remove(this.scrollbar);\r\n }\r\n\r\n var params = {\r\n direction: this.props.vertical ? 'vertical' : 'horizontal',\r\n speed: this.props.speed,\r\n autoHeight: this.props['auto-height'],\r\n effect: this.props.effect,\r\n spaceBetween: this.props['space-between'],\r\n slidesPerView: this.props['slides-per-view'],\r\n slidesPerGroup: this.props['slides-per-group'],\r\n centeredSlides: this.props['centered-slides'],\r\n slidesOffsetBefore: this.props['slides-offset-before'],\r\n slidesOffsetAfter: this.props['slides-offset-after'],\r\n grabCursor: this.props['grab-cursor'],\r\n freeMode: this.props['free-mode'],\r\n freeModeSticky: this.props['free-mode-sticky'],\r\n loop: this.props.loop,\r\n loopFillGroupWithBlank: this.props['loop-fill'],\r\n pagination: {\r\n el: this.props.pagination ? '.swiper-pagination' : null,\r\n type: this.props.pagination,\r\n clickable: true\r\n },\r\n navigation: {\r\n prevEl: this.props.navigation ? '.swiper-button-prev' : null,\r\n nextEl: this.props.navigation ? '.swiper-button-next' : null\r\n },\r\n scrollbar: {\r\n el: this.props.scrollbar ? '.swiper-scrollbar' : null,\r\n draggable: true,\r\n snapOnRelease: true\r\n },\r\n autoplay: this.props.autoplay,\r\n parallax: this.props.parallax,\r\n keyboard: this.props.keyboard,\r\n mousewheel: this.props.mousewheel,\r\n breakpointsInverse: true,\r\n breakpoints: {},\r\n observer: this.props.observer,\r\n observeParents: this.props.observer,\r\n\t\t\t\tinitialSlide: this.props['initial-slide']\r\n };\r\n\r\n this.spaceBetween = this.props['space-between'];\r\n this.slidesPerView = this.props['slides-per-view'];\r\n this.slidesPerGroup = this.props['slides-per-group'];\r\n\r\n params.breakpoints[576] = this.getBreakpointProps('sm');\r\n params.breakpoints[768] = this.getBreakpointProps('md');\r\n params.breakpoints[992] = this.getBreakpointProps('lg');\r\n params.breakpoints[1200] = this.getBreakpointProps('xl');\r\n\r\n if (window.wapplerDesignView) {\r\n params.simulateTouch = false;\r\n }\r\n\r\n // Delayed init, let App Connect first update the slides\r\n var self = this;\r\n requestAnimationFrame(function() {\r\n if (self.swiper) self.swiper.destroy();\r\n var swiper = self.swiper = new Swiper(self.container, params);\r\n swiper.on('observerUpdate', self.updateData);\r\n swiper.on('slideChange', self.updateData);\r\n swiper.on('slideChange', self.dispatchEvent.bind(self, 'change'));\r\n self.updateData();\r\n self.dispatchEvent('rendered');\r\n });\r\n }\r\n },\r\n\r\n updated: function() {\r\n if (this.swiper && !this.swiper.destroyed) {\r\n this.swiper.updateSize();\r\n }\r\n },\r\n\r\n getBreakpointProps: function(suffix) {\r\n if (this.props['space-between-' + suffix] != null) {\r\n this.spaceBetween = this.props['space-between-' + suffix];\r\n }\r\n\r\n if (this.props['slides-per-view-' + suffix] != null) {\r\n this.slidesPerView = this.props['slides-per-view-' + suffix];\r\n }\r\n\r\n if (this.props['slides-per-group-' + suffix] != null) {\r\n this.slidesPerGroup = this.props['slides-per-group-' + suffix];\r\n }\r\n\r\n return {\r\n spaceBetween: this.spaceBetween,\r\n slidesPerView: this.slidesPerView,\r\n slidesPerGroup: this.slidesPerGroup\r\n };\r\n },\r\n\r\n updateData: function() {\r\n if (this.swiper && !this.swiper.destroyed) {\r\n var total = this.swiper.loopedSlides || this.swiper.slides.length;\r\n\r\n this.set('index', total > 0 ? this.swiper.realIndex % total : 0);\r\n this.set('total', total);\r\n this.set('isBeginning', this.swiper.isBeginning);\r\n this.set('isEnd', this.swiper.isEnd);\r\n }\r\n }\r\n\r\n});\r\n"]}