react-slick
Advanced tools
Comparing version 0.21.0 to 0.22.0
@@ -5,2 +5,37 @@ # Change Log | ||
## 0.22.0 | ||
**Release Changes** | ||
- Internal Changes | ||
- converted InnerSlider from createReactClass object to ES6 class | ||
- removed all the mixins, created classMethods and pure utility functions instead | ||
- changed autoplay from setTimeout to setInterval | ||
- added images onload handlers to update dynamically | ||
- added autoplaying state for the betterment of autoplay and pause | ||
- removed usage of assign or Object.assign, using object spreading instead | ||
- implemented effects of touchMove props | ||
- fixed transition in opposite direction in case of continuous scrolling | ||
- added separate onclick event listener for images | ||
- added missing classes `regular` and `slider` | ||
- renamed events | ||
- edgeEvent => onEdge | ||
- init => onInit | ||
- reInit => onReInit | ||
- implemented `pauseOnDotsHover` property | ||
- implemented Progressive LazyLoad property, lazyLoad is now ondemand/progressive | ||
- implemented lazyloadError event | ||
- implemented useTransform property | ||
- implemented pauseOnFocus property | ||
- added resize observer to update on slider resize | ||
- Bug Fixes | ||
- dynamic track updates on image load | ||
- fixed slickPause and autoPlay issues (paused slider would resume autoplay sometime) | ||
- fixed trackStyle update on window resize | ||
- fixed NodeList forEach problem for chrome 51 or below | ||
- fixed bugs due to uncleared callback timers | ||
- fixed update issues on just slider resize | ||
## 0.21.0 | ||
@@ -7,0 +42,0 @@ |
@@ -1,2 +0,2 @@ | ||
!function(t,e){"object"==typeof exports&&"object"==typeof module?module.exports=e(require("react"),require("react-dom")):"function"==typeof define&&define.amd?define(["react","react-dom"],e):"object"==typeof exports?exports.Slider=e(require("react"),require("react-dom")):t.Slider=e(t.React,t.ReactDOM)}(this,function(t,e){return function(t){function e(n){if(i[n])return i[n].exports;var s=i[n]={exports:{},id:n,loaded:!1};return t[n].call(s.exports,s,s.exports,e),s.loaded=!0,s.exports}var i={};return e.m=t,e.c=i,e.p="",e(0)}([function(t,e,i){"use strict";function n(t){return t&&t.__esModule?t:{default:t}}e.__esModule=!0;var s=i(1),r=n(s);e.default=r.default},function(t,e,i){"use strict";function n(t){return t&&t.__esModule?t:{default:t}}function s(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function r(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function o(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}e.__esModule=!0;var a=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var i=arguments[e];for(var n in i)Object.prototype.hasOwnProperty.call(i,n)&&(t[n]=i[n])}return t},l=i(2),c=n(l),u=i(3),d=i(7),p=n(d),h=i(23),f=n(h),g=i(12),v=n(g),y=i(25),S=n(y),m=S.default&&i(26),w=function(t){function e(i){s(this,e);var n=r(this,t.call(this,i));return n.innerSliderRefHandler=function(t){return n.innerSlider=t},n.slickPrev=function(){return n.innerSlider.slickPrev()},n.slickNext=function(){return n.innerSlider.slickNext()},n.slickGoTo=function(t){return n.innerSlider.slickGoTo(t)},n.slickPause=function(){return n.innerSlider.pause()},n.slickPlay=function(){return n.innerSlider.autoPlay()},n.state={breakpoint:null},n._responsiveMediaHandlers=[],n}return o(e,t),e.prototype.media=function(t,e){m.register(t,e),this._responsiveMediaHandlers.push({query:t,handler:e})},e.prototype.componentWillMount=function(){var t=this;if(this.props.responsive){var e=this.props.responsive.map(function(t){return t.breakpoint});e.sort(function(t,e){return t-e}),e.forEach(function(i,n){var s=void 0;s=0===n?(0,f.default)({minWidth:0,maxWidth:i}):(0,f.default)({minWidth:e[n-1]+1,maxWidth:i}),S.default&&t.media(s,function(){t.setState({breakpoint:i})})});var i=(0,f.default)({minWidth:e.slice(-1)[0]});S.default&&this.media(i,function(){t.setState({breakpoint:null})})}},e.prototype.componentWillUnmount=function(){this._responsiveMediaHandlers.forEach(function(t){m.unregister(t.query,t.handler)})},e.prototype.render=function(){var t,e,i=this;this.state.breakpoint?(e=this.props.responsive.filter(function(t){return t.breakpoint===i.state.breakpoint}),t="unslick"===e[0].settings?"unslick":(0,p.default)({},v.default,this.props,e[0].settings)):t=(0,p.default)({},v.default,this.props),t.centerMode&&(t.slidesToScroll>1&&console.warn("slidesToScroll should be equal to 1 in centerMode, you are using "+t.slidesToScroll),t.slidesToScroll=1),t.fade&&(t.slidesToShow>1&&console.warn("slidesToShow should be equal to 1 when fade is true, you're using "+t.slidesToShow),t.slidesToScroll>1&&console.warn("slidesToScroll should be equal to 1 when fade is true, you're using "+t.slidesToScroll),t.slidesToShow=1,t.slidesToScroll=1);var n=c.default.Children.toArray(this.props.children);return n=n.filter(function(t){return"string"==typeof t?!!t.trim():!!t}),"unslick"===t?(t=(0,p.default)({unslick:!0},v.default,this.props),t.slidesToShow=n.length,t.className+=" unslicked"):n.length<=t.slidesToShow&&(t.unslick=!0,t.slidesToShow=n.length,t.className+=" unslicked"),c.default.createElement(u.InnerSlider,a({ref:this.innerSliderRefHandler},t),n)},e}(c.default.Component);e.default=w},function(e,i){e.exports=t},function(t,e,i){"use strict";function n(t){return t&&t.__esModule?t:{default:t}}e.__esModule=!0,e.InnerSlider=void 0;var s=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var i=arguments[e];for(var n in i)Object.prototype.hasOwnProperty.call(i,n)&&(t[n]=i[n])}return t},r=i(2),o=n(r),a=i(4),l=n(a),c=i(9),u=n(c),d=i(11),p=n(d),h=i(12),f=(n(h),i(13)),g=n(f),v=i(19),y=n(v),S=i(7),m=n(S),w=i(10),b=i(5),T=i(20),k=i(21),C=i(22);e.InnerSlider=(0,g.default)({displayName:"InnerSlider",mixins:[u.default,l.default],list:null,track:null,listRefHandler:function(t){this.list=t},trackRefHandler:function(t){this.track=t},getInitialState:function(){return s({},p.default,{currentSlide:this.props.initialSlide})},componentWillMount:function(){if(this.props.init&&this.props.init(),this.props.lazyLoad){var t=(0,w.getOnDemandLazySlides)((0,m.default)({},this.props,this.state));t.length>0&&(this.setState(function(e,i){return{lazyLoadedList:e.lazyLoadedList.concat(t)}}),this.props.onLazyLoad&&this.props.onLazyLoad(t))}},componentDidMount:function(){var t=this,e=(0,m.default)({listRef:this.list,trackRef:this.track},this.props),i=(0,w.initializedState)(e);(0,m.default)(e,{slideIndex:i.currentSlide},i);var n=(0,b.getTrackLeft)(e);(0,m.default)(e,{left:n});var s=(0,b.getTrackCSS)(e);i.trackStyle=s,this.setState(i,function(){t.adaptHeight(),t.autoPlay()}),window&&(window.addEventListener?window.addEventListener("resize",this.onWindowResized):window.attachEvent("onresize",this.onWindowResized))},componentWillUnmount:function(){this.animationEndCallback&&clearTimeout(this.animationEndCallback),window.addEventListener?window.removeEventListener("resize",this.onWindowResized):window.detachEvent("onresize",this.onWindowResized),this.autoplayTimer&&clearInterval(this.autoplayTimer)},componentWillReceiveProps:function(t){var e=this,i=(0,m.default)({listRef:this.list,trackRef:this.track},t,this.state),n=(0,w.initializedState)(i);(0,m.default)(i,{slideIndex:n.currentSlide},n);var s=(0,b.getTrackLeft)(i);(0,m.default)(i,{left:s});var r=(0,b.getTrackCSS)(i);o.default.Children.count(this.props.children)!==o.default.Children.count(t.children)&&(n.trackStyle=r),this.setState(n,function(){e.state.currentSlide>=o.default.Children.count(t.children)&&e.changeSlide({message:"index",index:o.default.Children.count(t.children)-t.slidesToShow,currentSlide:e.state.currentSlide}),t.autoplay?e.autoPlay(t.autoplay):e.pause()})},componentDidUpdate:function(){var t=this,e=document.querySelectorAll(".slick-slide img");if(e.forEach(function(e){e.onload||(e.onload=function(){return setTimeout(function(){return t.update(t.props)},t.props.speed)})}),this.props.reInit&&this.props.reInit(),this.props.lazyLoad){var i=(0,w.getOnDemandLazySlides)((0,m.default)({},this.props,this.state));i.length>0&&(this.setState(function(t,e){return{lazyLoadedList:t.lazyLoadedList.concat(i)}}),this.props.onLazyLoad&&this.props.onLazyLoad(i))}this.adaptHeight()},onWindowResized:function(){this.update(this.props),this.setState({animating:!1}),clearTimeout(this.animationEndCallback),delete this.animationEndCallback},slickPrev:function(){var t=this;setTimeout(function(){return t.changeSlide({message:"previous"})},0)},slickNext:function(){var t=this;setTimeout(function(){return t.changeSlide({message:"next"})},0)},slickGoTo:function(t){var e=this;t=Number(t),!isNaN(t)&&setTimeout(function(){return e.changeSlide({message:"index",index:t,currentSlide:e.state.currentSlide})},0)},render:function(){var t=(0,y.default)("slick-initialized","slick-slider",this.props.className,{"slick-vertical":this.props.vertical}),e=(0,m.default)({},this.props,this.state),i=(0,w.extractObject)(e,["fade","cssEase","speed","infinite","centerMode","focusOnSelect","currentSlide","lazyLoad","lazyLoadedList","rtl","slideWidth","slideHeight","listHeight","vertical","slidesToShow","slidesToScroll","slideCount","trackStyle","variableWidth","unslick","centerPadding"]);i.focusOnSelect=this.props.focusOnSelect?this.selectHandler:null;var n;if(this.props.dots===!0&&this.state.slideCount>=this.props.slidesToShow){var r=(0,w.extractObject)(e,["dotsClass","slideCount","slidesToShow","currentSlide","slidesToScroll","clickHandler","children","customPaging","infinite","appendDots"]);r.clickHandler=this.changeSlide,n=o.default.createElement(k.Dots,r)}var a,l,c=(0,w.extractObject)(e,["infinite","centerMode","currentSlide","slideCount","slidesToShow","prevArrow","nextArrow"]);c.clickHandler=this.changeSlide,this.props.arrows&&(a=o.default.createElement(C.PrevArrow,c),l=o.default.createElement(C.NextArrow,c));var u=null;this.props.vertical&&(u={height:this.state.listHeight});var d=null;this.props.vertical===!1?this.props.centerMode===!0&&(d={padding:"0px "+this.props.centerPadding}):this.props.centerMode===!0&&(d={padding:this.props.centerPadding+" 0px"});var p=(0,m.default)({},u,d),h={className:"slick-list",style:p,onMouseDown:this.swipeStart,onMouseMove:this.state.dragging?this.swipeMove:null,onMouseUp:this.swipeEnd,onMouseLeave:this.state.dragging?this.swipeEnd:null,onTouchStart:this.swipeStart,onTouchMove:this.state.dragging?this.swipeMove:null,onTouchEnd:this.swipeEnd,onTouchCancel:this.state.dragging?this.swipeEnd:null,onKeyDown:this.props.accessibility?this.keyHandler:null},f={className:t,onMouseEnter:this.onInnerSliderEnter,onMouseLeave:this.onInnerSliderLeave,onMouseOver:this.onInnerSliderOver,dir:"ltr"};return this.props.unslick&&(h={className:"slick-list"},f={className:t}),o.default.createElement("div",f,this.props.unslick?"":a,o.default.createElement("div",s({ref:this.listRefHandler},h),o.default.createElement(T.Track,s({ref:this.trackRefHandler},i),this.props.children)),this.props.unslick?"":l,this.props.unslick?"":n)}})},function(t,e,i){"use strict";function n(t){return t&&t.__esModule?t:{default:t}}e.__esModule=!0;var s=i(5),r=i(9),o=(n(r),i(7)),a=n(o),l=i(6),c=n(l),u=i(8),d=i(10),p={changeSlide:function(t){var e,i,n,s,r,o=this.props,a=o.slidesToScroll,l=o.slidesToShow,c=o.centerMode,d=o.rtl,p=this.state,h=p.slideCount,f=p.currentSlide;if(s=h%a!==0,e=s?0:(h-f)%a,"previous"===t.message)n=0===e?a:l-e,r=f-n,this.props.lazyLoad&&!this.props.infinite&&(i=f-n,r=i===-1?h-1:i);else if("next"===t.message)n=0===e?a:e,r=f+n,this.props.lazyLoad&&!this.props.infinite&&(r=(f+a)%h+e);else if("dots"===t.message){if(r=t.index*t.slidesToScroll,r===t.currentSlide)return}else if("children"===t.message){if(r=t.index,r===t.currentSlide)return;if(this.props.infinite){var g=(0,u.siblingDirection)({currentSlide:f,targetSlide:r,slidesToShow:l,centerMode:c,slideCount:h,rtl:d});r>t.currentSlide&&"left"===g?r-=h:r<t.currentSlide&&"right"===g&&(r+=h)}}else if("index"===t.message&&(r=Number(t.index),r===t.currentSlide))return;this.slideHandler(r)},keyHandler:function(t){t.target.tagName.match("TEXTAREA|INPUT|SELECT")||(37===t.keyCode&&this.props.accessibility===!0?this.changeSlide({message:this.props.rtl===!0?"next":"previous"}):39===t.keyCode&&this.props.accessibility===!0&&this.changeSlide({message:this.props.rtl===!0?"previous":"next"}))},selectHandler:function(t){this.changeSlide(t)},swipeStart:function(t){"IMG"===t.target.tagName&&t.preventDefault();var e,i;this.props.swipe!==!1&&(this.props.draggable===!1&&t.type.indexOf("mouse")!==-1||(e=void 0!==t.touches?t.touches[0].pageX:t.clientX,i=void 0!==t.touches?t.touches[0].pageY:t.clientY,this.setState({dragging:!0,touchObject:{startX:e,startY:i,curX:e,curY:i}})))},swipeMove:function(t){if(!this.state.dragging)return void t.preventDefault();if(!this.state.scrolling){if(this.state.animating)return void t.preventDefault();this.props.vertical&&this.props.swipeToSlide&&this.props.verticalSwiping&&t.preventDefault();var e,i,n,r=this.state.touchObject;i=(0,s.getTrackLeft)((0,a.default)({slideIndex:this.state.currentSlide,trackRef:this.track},this.props,this.state)),r.curX=t.touches?t.touches[0].pageX:t.clientX,r.curY=t.touches?t.touches[0].pageY:t.clientY,r.swipeLength=Math.round(Math.sqrt(Math.pow(r.curX-r.startX,2)));var o=Math.round(Math.sqrt(Math.pow(r.curY-r.startY,2)));if(!this.props.verticalSwiping&&!this.state.swiping&&o>10)return void this.setState({scrolling:!0});this.props.verticalSwiping&&(r.swipeLength=o),n=(this.props.rtl===!1?1:-1)*(r.curX>r.startX?1:-1),this.props.verticalSwiping&&(n=r.curY>r.startY?1:-1);var l=this.state.currentSlide,c=Math.ceil(this.state.slideCount/this.props.slidesToScroll),u=(0,d.getSwipeDirection)(this.state.touchObject,this.props.verticalSwiping),p=r.swipeLength;this.props.infinite===!1&&(0===l&&"right"===u||l+1>=c&&"left"===u)&&(p=r.swipeLength*this.props.edgeFriction,this.state.edgeDragged===!1&&this.props.edgeEvent&&(this.props.edgeEvent(u),this.setState({edgeDragged:!0}))),this.state.swiped===!1&&this.props.swipeEvent&&(this.props.swipeEvent(u),this.setState({swiped:!0})),e=this.props.vertical?i+p*(this.state.listHeight/this.state.listWidth)*n:this.props.rtl?i-p*n:i+p*n,this.props.verticalSwiping&&(e=i+p*n),this.setState({touchObject:r,swipeLeft:e,trackStyle:(0,s.getTrackCSS)((0,a.default)({left:e},this.props,this.state))}),Math.abs(r.curX-r.startX)<.8*Math.abs(r.curY-r.startY)||r.swipeLength>10&&(this.setState({swiping:!0}),t.preventDefault())}},getNavigableIndexes:function(){var t=void 0,e=0,i=0,n=[];for(this.props.infinite?(e=this.props.slidesToShow*-1,i=this.props.slidesToShow*-1,t=2*this.state.slideCount):t=this.state.slideCount;e<t;)n.push(e),e=i+this.props.slidesToScroll,i+=this.props.slidesToScroll<=this.props.slidesToShow?this.props.slidesToScroll:this.props.slidesToShow;return n},checkNavigable:function(t){var e=this.getNavigableIndexes(),i=0;if(t>e[e.length-1])t=e[e.length-1];else for(var n in e){if(t<e[n]){t=i;break}i=e[n]}return t},getSlideCount:function(){var t=this,e=this.props.centerMode?this.state.slideWidth*Math.floor(this.props.slidesToShow/2):0;if(this.props.swipeToSlide){var i=void 0,n=c.default.findDOMNode(this.list),s=n.querySelectorAll(".slick-slide");if(Array.from(s).every(function(n){if(t.props.vertical){if(n.offsetTop+(0,d.getHeight)(n)/2>t.state.swipeLeft*-1)return i=n,!1}else if(n.offsetLeft-e+(0,d.getWidth)(n)/2>t.state.swipeLeft*-1)return i=n,!1;return!0}),!i)return 0;var r=this.props.rtl===!0?this.state.slideCount-this.state.currentSlide:this.state.currentSlide,o=Math.abs(i.dataset.index-r)||1;return o}return this.props.slidesToScroll},swipeEnd:function(t){if(!this.state.dragging)return void(this.props.swipe&&t.preventDefault());var e=this.state.touchObject,i=this.state.listWidth/this.props.touchThreshold,n=(0,d.getSwipeDirection)(e,this.props.verticalSwiping);this.props.verticalSwiping&&(i=this.state.listHeight/this.props.touchThreshold);var r=this.state.scrolling;if(this.setState({dragging:!1,edgeDragged:!1,scrolling:!1,swiping:!1,swiped:!1,swipeLeft:null,touchObject:{}}),!r&&e.swipeLength)if(e.swipeLength>i){t.preventDefault(),this.props.onSwipe&&this.props.onSwipe(n);var o=void 0,l=void 0;switch(n){case"left":case"up":l=this.state.currentSlide+this.getSlideCount(),o=this.props.swipeToSlide?this.checkNavigable(l):l,this.setState({currentDirection:0});break;case"right":case"down":l=this.state.currentSlide-this.getSlideCount(),o=this.props.swipeToSlide?this.checkNavigable(l):l,this.setState({currentDirection:1});break;default:o=this.state.currentSlide}this.slideHandler(o)}else{var c=(0,s.getTrackLeft)((0,a.default)({slideIndex:this.state.currentSlide,trackRef:this.track},this.props,this.state));this.setState({trackStyle:(0,s.getTrackAnimateCSS)((0,a.default)({left:c},this.props,this.state))})}},onInnerSliderEnter:function(t){this.props.autoplay&&this.props.pauseOnHover&&this.pause()},onInnerSliderOver:function(t){this.props.autoplay&&this.props.pauseOnHover&&this.pause()},onInnerSliderLeave:function(t){this.props.autoplay&&this.props.pauseOnHover&&this.autoPlay()}};e.default=p},function(t,e,i){"use strict";function n(t){return t&&t.__esModule?t:{default:t}}e.__esModule=!0,e.getTrackLeft=e.getTrackAnimateCSS=e.getTrackCSS=void 0;var s=i(6),r=n(s),o=i(7),a=n(o),l=i(8),c=function(t,e){return e.reduce(function(e,i){return e&&t.hasOwnProperty(i)},!0)?null:console.error("Keys Missing",t)},u=e.getTrackCSS=function(t){c(t,["left","variableWidth","slideCount","slidesToShow","slideWidth"]);var e,i,n=t.slideCount+2*t.slidesToShow;t.vertical?i=n*t.slideHeight:e=(0,l.getTotalSlides)(t)*t.slideWidth;var s={opacity:1,WebkitTransform:t.vertical?"translate3d(0px, "+t.left+"px, 0px)":"translate3d("+t.left+"px, 0px, 0px)",transform:t.vertical?"translate3d(0px, "+t.left+"px, 0px)":"translate3d("+t.left+"px, 0px, 0px)",transition:"",WebkitTransition:"",msTransform:t.vertical?"translateY("+t.left+"px)":"translateX("+t.left+"px)"};return t.fade&&(s={opacity:1}),e&&(0,a.default)(s,{width:e}),i&&(0,a.default)(s,{height:i}),window&&!window.addEventListener&&window.attachEvent&&(t.vertical?s.marginTop=t.left+"px":s.marginLeft=t.left+"px"),s};e.getTrackAnimateCSS=function(t){c(t,["left","variableWidth","slideCount","slidesToShow","slideWidth","speed","cssEase"]);var e=u(t);return e.WebkitTransition="-webkit-transform "+t.speed+"ms "+t.cssEase,e.transition="transform "+t.speed+"ms "+t.cssEase,e},e.getTrackLeft=function(t){if(t.unslick)return 0;c(t,["slideIndex","trackRef","infinite","centerMode","slideCount","slidesToShow","slidesToScroll","slideWidth","listWidth","variableWidth","slideHeight"]);var e,i,n=t.slideIndex,s=t.trackRef,o=t.infinite,a=t.centerMode,u=t.slideCount,d=t.slidesToShow,p=t.slidesToScroll,h=t.slideWidth,f=t.listWidth,g=t.variableWidth,v=t.slideHeight,y=t.fade,S=t.vertical,m=0,w=0;if(y||1===t.slideCount)return 0;var b=0;if(o?(b=-(0,l.getPreClones)(t),u%p!==0&&n+p>u&&(b=-(n>u?d-(n-u):u%p)),a&&(b+=parseInt(d/2))):(u%p!==0&&n+p>u&&(b=d-u%p),a&&(b=parseInt(d/2))),m=b*h,w=b*v,e=S?n*v*-1+w:n*h*-1+m,g===!0){var T;r.default.findDOMNode(s).children[u-1];if(T=n+(0,l.getPreClones)(t),i=r.default.findDOMNode(s).childNodes[T],e=i?i.offsetLeft*-1:0,a===!0){T=o?n+(0,l.getPreClones)(t):n,i=r.default.findDOMNode(s).children[T],e=0;for(var k=0;k<T;k++)e-=r.default.findDOMNode(s).children[k].offsetWidth;e-=parseInt(t.centerPadding),e+=(f-i.offsetWidth)/2}}return e}},function(t,i){t.exports=e},function(t,e){/* | ||
!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react"),require("react-dom")):"function"==typeof define&&define.amd?define(["react","react-dom"],t):"object"==typeof exports?exports.Slider=t(require("react"),require("react-dom")):e.Slider=t(e.React,e.ReactDOM)}(this,function(e,t){return function(e){function t(r){if(n[r])return n[r].exports;var i=n[r]={exports:{},id:r,loaded:!1};return e[r].call(i.exports,i,i.exports,t),i.loaded=!0,i.exports}var n={};return t.m=e,t.c=n,t.p="",t(0)}([function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var i=n(1),o=r(i);t.default=o.default},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}t.__esModule=!0;var a=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},l=n(2),c=r(l),u=n(3),d=n(20),p=r(d),f=n(5),h=r(f),v=n(22),y=r(v),g=y.default&&n(23),m=function(e){function t(n){i(this,t);var r=o(this,e.call(this,n));return r.innerSliderRefHandler=function(e){return r.innerSlider=e},r.slickPrev=function(){return r.innerSlider.slickPrev()},r.slickNext=function(){return r.innerSlider.slickNext()},r.slickGoTo=function(e){return r.innerSlider.slickGoTo(e)},r.slickPause=function(){return r.innerSlider.pause("paused")},r.slickPlay=function(){return r.innerSlider.autoPlay("play")},r.state={breakpoint:null},r._responsiveMediaHandlers=[],r}return s(t,e),t.prototype.media=function(e,t){g.register(e,t),this._responsiveMediaHandlers.push({query:e,handler:t})},t.prototype.componentWillMount=function(){var e=this;if(this.props.responsive){var t=this.props.responsive.map(function(e){return e.breakpoint});t.sort(function(e,t){return e-t}),t.forEach(function(n,r){var i=void 0;i=0===r?(0,p.default)({minWidth:0,maxWidth:n}):(0,p.default)({minWidth:t[r-1]+1,maxWidth:n}),y.default&&e.media(i,function(){e.setState({breakpoint:n})})});var n=(0,p.default)({minWidth:t.slice(-1)[0]});y.default&&this.media(n,function(){e.setState({breakpoint:null})})}},t.prototype.componentWillUnmount=function(){this._responsiveMediaHandlers.forEach(function(e){g.unregister(e.query,e.handler)})},t.prototype.render=function(){var e,t,n=this;this.state.breakpoint?(t=this.props.responsive.filter(function(e){return e.breakpoint===n.state.breakpoint}),e="unslick"===t[0].settings?"unslick":a({},h.default,this.props,t[0].settings)):e=a({},h.default,this.props),e.centerMode&&(e.slidesToScroll>1&&console.warn("slidesToScroll should be equal to 1 in centerMode, you are using "+e.slidesToScroll),e.slidesToScroll=1),e.fade&&(e.slidesToShow>1&&console.warn("slidesToShow should be equal to 1 when fade is true, you're using "+e.slidesToShow),e.slidesToScroll>1&&console.warn("slidesToScroll should be equal to 1 when fade is true, you're using "+e.slidesToScroll),e.slidesToShow=1,e.slidesToScroll=1);var r=c.default.Children.toArray(this.props.children);if(r=r.filter(function(e){return"string"==typeof e?!!e.trim():!!e}),"unslick"===e){var i="regular slider "+(this.props.className||"");return c.default.createElement("div",{className:i},r)}return r.length<=e.slidesToShow&&(e.unslick=!0),c.default.createElement(u.InnerSlider,a({ref:this.innerSliderRefHandler},e),r)},t}(c.default.Component);t.default=m},function(t,n){t.exports=e},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){var n={};for(var r in e)t.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n}function o(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function s(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function a(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}t.__esModule=!0,t.InnerSlider=void 0;var l=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},c=n(2),u=r(c),d=n(4),p=r(d),f=n(5),h=(r(f),n(6)),v=(r(h),n(13)),y=r(v),g=n(14),m=n(16),w=n(17),S=n(18),b=n(19),_=r(b);t.InnerSlider=function(e){function t(n){o(this,t);var r=s(this,e.call(this,n));return r.listRefHandler=function(e){return r.list=e},r.trackRefHandler=function(e){return r.track=e},r.adaptHeight=function(){if(r.props.adaptiveHeight&&r.list){var e=r.list.querySelector('[data-index="'+r.state.currentSlide+'"]');r.list.style.height=(0,g.getHeight)(e)+"px"}},r.componentWillMount=function(){if(r.props.onInit&&r.props.onInit(),r.props.lazyLoad){var e=(0,g.getOnDemandLazySlides)(l({},r.props,r.state));e.length>0&&(r.setState(function(t,n){return{lazyLoadedList:t.lazyLoadedList.concat(e)}}),r.props.onLazyLoad&&r.props.onLazyLoad(e))}},r.componentDidMount=function(){var e=l({listRef:r.list,trackRef:r.track},r.props);r.updateState(e,!0,function(){r.adaptHeight(),r.props.autoplay&&r.autoPlay("update")}),"progressive"===r.props.lazyLoad&&(r.lazyLoadTimer=setInterval(r.progressiveLazyLoad,1e3)),r.ro=new _.default(function(e){return r.onWindowResized()}),r.ro.observe(r.list),Array.from(document.querySelectorAll(".slick-slide")).forEach(function(e){e.onfocus=r.props.pauseOnFocus?r.onSlideFocus:null,e.onblur=r.props.pauseOnFocus?r.onSlideBlur:null}),window&&(window.addEventListener?window.addEventListener("resize",r.onWindowResized):window.attachEvent("onresize",r.onWindowResized))},r.componentWillUnmount=function(){r.animationEndCallback&&clearTimeout(r.animationEndCallback),r.lazyLoadTimer&&clearInterval(r.lazyLoadTimer),r.callbackTimers.length&&(r.callbackTimers.forEach(function(e){return clearTimeout(e)}),r.callbackTimers=[]),window.addEventListener?window.removeEventListener("resize",r.onWindowResized):window.detachEvent("onresize",r.onWindowResized),r.autoplayTimer&&clearInterval(r.autoplayTimer)},r.componentWillReceiveProps=function(e){var t=l({listRef:r.list,trackRef:r.track},e,r.state);r.updateState(t,!1,function(){r.state.currentSlide>=u.default.Children.count(e.children)&&r.changeSlide({message:"index",index:u.default.Children.count(e.children)-e.slidesToShow,currentSlide:r.state.currentSlide}),e.autoplay?r.autoPlay("update"):r.pause("paused")})},r.componentDidUpdate=function(){if(r.checkImagesLoad(),r.props.onReInit&&r.props.onReInit(),r.props.lazyLoad){var e=(0,g.getOnDemandLazySlides)(l({},r.props,r.state));e.length>0&&(r.setState(function(t,n){return{lazyLoadedList:t.lazyLoadedList.concat(e)}}),r.props.onLazyLoad&&r.props.onLazyLoad(e))}r.adaptHeight()},r.onWindowResized=function(){var e=l({listRef:r.list,trackRef:r.track},r.props,r.state);r.updateState(e,!0,function(){r.props.autoplay?r.autoPlay("update"):r.pause("paused")}),r.setState({animating:!1}),clearTimeout(r.animationEndCallback),delete r.animationEndCallback},r.updateState=function(e,t,n){var i=(0,g.initializedState)(e);e=l({},e,i,{slideIndex:i.currentSlide});var o=(0,g.getTrackLeft)(e);e=l({},e,{left:o});var s=(0,g.getTrackCSS)(e);(t||u.default.Children.count(r.props.children)!==u.default.Children.count(e.children))&&(i.trackStyle=s),r.setState(i,n)},r.checkImagesLoad=function(){var e=document.querySelectorAll(".slick-slide img"),t=e.length,n=0;Array.from(e).forEach(function(e){var i=function(){return++n&&n>=t&&r.onWindowResized()};if(e.onclick){var o=e.onclick;e.onclick=function(){o(),e.parentNode.focus()}}else e.onclick=function(){return e.parentNode.focus()};e.onload||(r.props.lazyLoad?e.onload=function(){r.adaptHeight(),r.callbackTimers.push(setTimeout(r.onWindowResized,r.props.speed))}:(e.onload=i,e.onerror=function(){i(),r.props.onLazyLoadError&&r.props.onLazyLoadError()}))})},r.progressiveLazyLoad=function(){for(var e=[],t=l({},r.props,r.state),n=r.state.currentSlide;n<r.state.slideCount+(0,g.getPostClones)(t);n++)if(r.state.lazyLoadedList.indexOf(n)<0){e.push(n);break}for(var i=r.state.currentSlide-1;i>=-(0,g.getPreClones)(t);i--)if(r.state.lazyLoadedList.indexOf(i)<0){e.push(i);break}e.length>0?(r.setState(function(t){return{lazyLoadedList:t.lazyLoadedList.concat(e)}}),r.props.onLazyLoad&&r.props.onLazyLoad(e)):r.lazyLoadTimer&&(clearInterval(r.lazyLoadTimer),delete r.lazyLoadTimer)},r.slideHandler=function(e){var t=r.props,n=t.asNavFor,o=t.currentSlide,s=t.beforeChange,a=t.onLazyLoad,c=t.speed,u=t.afterChange,d=(0,g.slideHandler)(l({index:e},r.props,r.state,{trackRef:r.track})),p=d.state,f=d.nextState;if(p){s&&s(o,p.currentSlide);var h=p.lazyLoadedList.filter(function(e){return r.state.lazyLoadedList.indexOf(e)<0});a&&h.length>0&&a(h),r.setState(p,function(){n&&n.innerSlider.state.currentSlide!==o&&n.innerSlider.slideHandler(e),r.animationEndCallback=setTimeout(function(){var e=f.animating,t=i(f,["animating"]);r.setState(t,function(){r.callbackTimers.push(setTimeout(function(){return r.setState({animating:e})},10)),u&&u(p.currentSlide),delete r.animationEndCallback})},c)})}},r.changeSlide=function(e){var t=l({},r.props,r.state),n=(0,g.changeSlide)(t,e);(0===n||n)&&r.slideHandler(n)},r.keyHandler=function(e){var t=(0,g.keyHandler)(e,r.props.accessibility,r.props.rtl);""!==t&&r.changeSlide({message:t})},r.selectHandler=function(e){r.changeSlide(e)},r.swipeStart=function(e){var t=(0,g.swipeStart)(e,r.props.swipe,r.props.draggable);""!==t&&r.setState(t)},r.swipeMove=function(e){var t=(0,g.swipeMove)(e,l({},r.props,r.state,{trackRef:r.track,listRef:r.list,slideIndex:r.state.currentSlide}));t&&r.setState(t)},r.swipeEnd=function(e){var t=(0,g.swipeEnd)(e,l({},r.props,r.state,{trackRef:r.track,listRef:r.list,slideIndex:r.state.currentSlide}));if(t){var n=t.triggerSlideHandler;delete t.triggerSlideHandler,r.setState(t),void 0!==n&&r.slideHandler(n)}},r.slickPrev=function(){r.callbackTimers.push(setTimeout(function(){return r.changeSlide({message:"previous"})},0))},r.slickNext=function(){r.callbackTimers.push(setTimeout(function(){return r.changeSlide({message:"next"})},0))},r.slickGoTo=function(e){return e=Number(e),isNan(e)?"":void r.callbackTimers.push(setTimeout(function(){return r.changeSlide({message:"index",index:e,currentSlide:r.state.currentSlide})},0))},r.play=function(){var e;if(r.props.rtl)e=r.state.currentSlide-r.props.slidesToScroll;else{if(!(0,g.canGoNext)(l({},r.props,r.state)))return!1;e=r.state.currentSlide+r.props.slidesToScroll}r.slideHandler(e)},r.autoPlay=function(e){r.autoplayTimer&&(console.warn("autoPlay is triggered more than once"),clearInterval(r.autoplayTimer));var t=r.state.autoplaying;if("update"===e){if("hovered"===t||"focused"===t||"paused"===t)return}else if("leave"===e){if("paused"===t||"focused"===t)return}else if("blur"===e&&("paused"===t||"hovered"===t))return;r.autoplayTimer=setInterval(r.play,r.props.autoplaySpeed+50),r.setState({autoplaying:"playing"})},r.pause=function(e){r.autoplayTimer&&(clearInterval(r.autoplayTimer),r.autoplayTimer=null);var t=r.state.autoplaying;"paused"===e?r.setState({autoplaying:"paused"}):"focused"===e?"hovered"!==t&&"playing"!==t||r.setState({autoplaying:"focused"}):"playing"===t&&r.setState({autoplaying:"hovered"})},r.onDotsOver=function(e){return r.props.autoplay&&r.pause("hovered")},r.onDotsLeave=function(e){return r.props.autoplay&&"hovered"===r.state.autoplaying&&r.autoPlay("leave")},r.onTrackOver=function(e){return r.props.autoplay&&r.pause("hovered")},r.onTrackLeave=function(e){return r.props.autoplay&&"hovered"===r.state.autoplaying&&r.autoPlay("leave")},r.onSlideFocus=function(e){return r.props.autoplay&&r.pause("focused")},r.onSlideBlur=function(e){return r.props.autoplay&&"focused"===r.state.autoplaying&&r.autoPlay("blur")},r.render=function(){var e=(0,y.default)("regular","slider","slick-initialized","slick-slider",r.props.className,{"slick-vertical":r.props.vertical}),t=l({},r.props,r.state),n=(0,g.extractObject)(t,["fade","cssEase","speed","infinite","centerMode","focusOnSelect","currentSlide","lazyLoad","lazyLoadedList","rtl","slideWidth","slideHeight","listHeight","vertical","slidesToShow","slidesToScroll","slideCount","trackStyle","variableWidth","unslick","centerPadding"]),i=r.props.pauseOnHover;n=l({},n,{onMouseEnter:i?r.onTrackOver:null,onMouseLeave:i?r.onTrackLeave:null,onMouseOver:i?r.onTrackOver:null,focusOnSelect:r.props.focusOnSelect?r.selectHandler:null});var o;if(r.props.dots===!0&&r.state.slideCount>=r.props.slidesToShow){var s=(0,g.extractObject)(t,["dotsClass","slideCount","slidesToShow","currentSlide","slidesToScroll","clickHandler","children","customPaging","infinite","appendDots"]),a=r.props.pauseOnDotsHover;s=l({},s,{clickHandler:r.changeSlide,onMouseEnter:a?r.onDotsLeave:null,onMouseOver:a?r.onDotsOver:null,onMouseLeave:a?r.onDotsLeave:null}),o=u.default.createElement(w.Dots,s)}var c,d,p=(0,g.extractObject)(t,["infinite","centerMode","currentSlide","slideCount","slidesToShow","prevArrow","nextArrow"]);p.clickHandler=r.changeSlide,r.props.arrows&&(c=u.default.createElement(S.PrevArrow,p),d=u.default.createElement(S.NextArrow,p));var f=null;r.props.vertical&&(f={height:r.state.listHeight});var h=null;r.props.vertical===!1?r.props.centerMode===!0&&(h={padding:"0px "+r.props.centerPadding}):r.props.centerMode===!0&&(h={padding:r.props.centerPadding+" 0px"});var v=l({},f,h),b=r.props.touchMove,_={className:"slick-list",style:v,onMouseDown:b?r.swipeStart:null,onMouseMove:r.state.dragging&&b?r.swipeMove:null,onMouseUp:b?r.swipeEnd:null,onMouseLeave:r.state.dragging&&b?r.swipeEnd:null,onTouchStart:b?r.swipeStart:null,onTouchMove:r.state.dragging&&b?r.swipeMove:null,onTouchEnd:b?r.swipeEnd:null,onTouchCancel:r.state.dragging&&b?r.swipeEnd:null,onKeyDown:r.props.accessibility?r.keyHandler:null},E={className:e,dir:"ltr"};return r.props.unslick&&(_={className:"slick-list"},E={className:e}),u.default.createElement("div",E,r.props.unslick?"":c,u.default.createElement("div",l({ref:r.listRefHandler},_),u.default.createElement(m.Track,l({ref:r.trackRefHandler},n),r.props.children)),r.props.unslick?"":d,r.props.unslick?"":o)},r.list=null,r.track=null,r.state=l({},p.default,{currentSlide:r.props.initialSlide}),r.callbackTimers=[],r}return a(t,e),t}(u.default.Component)},function(e,t){"use strict";t.__esModule=!0;var n={animating:!1,autoplaying:null,currentDirection:0,currentLeft:null,currentSlide:0,direction:1,dragging:!1,edgeDragged:!1,initialized:!1,lazyLoadedList:[],listHeight:null,listWidth:null,scrolling:!1,slideCount:null,slideHeight:null,slideWidth:null,swipeLeft:null,swiped:!1,swiping:!1,touchObject:{startX:0,startY:0,curX:0,curY:0},trackStyle:{},trackWidth:0};t.default=n},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var i=n(2),o=r(i),s={accessibility:!0,adaptiveHeight:!1,afterChange:null,appendDots:function(e){return o.default.createElement("ul",{style:{display:"block"}},e)},arrows:!0,autoplay:!1,autoplaySpeed:3e3,beforeChange:null,centerMode:!1,centerPadding:"50px",className:"",cssEase:"ease",customPaging:function(e){return o.default.createElement("button",null,e+1)},dots:!1,dotsClass:"slick-dots",draggable:!0,easing:"linear",edgeFriction:.35,fade:!1,focusOnSelect:!1,infinite:!0,initialSlide:0,lazyLoad:null,nextArrow:null,onEdge:null,onInit:null,onLazyLoadError:null,onReInit:null,pauseOnDotsHover:!1,pauseOnFocus:!1,pauseOnHover:!0,prevArrow:null,responsive:null,rtl:!1,slide:"div",slidesToScroll:1,slidesToShow:1,speed:500,swipe:!0,swipeEvent:null,swipeToSlide:!1,touchMove:!0,touchThreshold:5,useCSS:!0,useTransform:!0,variableWidth:!1,vertical:!1,waitForAnimate:!0};t.default=s},function(e,t,n){"use strict";var r=n(2),i=n(7);if("undefined"==typeof r)throw Error("create-react-class could not find the React object. If you are using script tags, make sure that React is being loaded before create-react-class.");var o=(new r.Component).updater;e.exports=i(r.Component,r.isValidElement,o)},function(e,t,n){"use strict";function r(e){return e}function i(e,t,n){function i(e,t,n){for(var r in t)t.hasOwnProperty(r)&&c("function"==typeof t[r],"%s: %s type `%s` is invalid; it must be a function, usually from React.PropTypes.",e.displayName||"ReactClass",o[n],r)}function d(e,t){var n=b.hasOwnProperty(t)?b[t]:null;k.hasOwnProperty(t)&&l("OVERRIDE_BASE"===n,"ReactClassInterface: You are attempting to override `%s` from your class specification. Ensure that your method names do not overlap with React methods.",t),e&&l("DEFINE_MANY"===n||"DEFINE_MANY_MERGED"===n,"ReactClassInterface: You are attempting to define `%s` on your component more than once. This conflict may be due to a mixin.",t)}function p(e,n){if(!n){var r=typeof n,i="object"===r&&null!==n;return void c(i,"%s: You're attempting to include a mixin that is either null or not an object. Check the mixins included by the component, as well as any mixins they include themselves. Expected object but got %s.",e.displayName||"ReactClass",null===n?null:r)}l("function"!=typeof n,"ReactClass: You're attempting to use a component class or function as a mixin. Instead, just use a regular object."),l(!t(n),"ReactClass: You're attempting to use a component as a mixin. Instead, just use a regular object.");var o=e.prototype,s=o.__reactAutoBindPairs;n.hasOwnProperty(u)&&_.mixins(e,n.mixins);for(var a in n)if(n.hasOwnProperty(a)&&a!==u){var p=n[a],f=o.hasOwnProperty(a);if(d(f,a),_.hasOwnProperty(a))_[a](e,p);else{var h=b.hasOwnProperty(a),g="function"==typeof p,m=g&&!h&&!f&&n.autobind!==!1;if(m)s.push(a,p),o[a]=p;else if(f){var w=b[a];l(h&&("DEFINE_MANY_MERGED"===w||"DEFINE_MANY"===w),"ReactClass: Unexpected spec policy %s for key %s when mixing in component specs.",w,a),"DEFINE_MANY_MERGED"===w?o[a]=v(o[a],p):"DEFINE_MANY"===w&&(o[a]=y(o[a],p))}else o[a]=p,"function"==typeof p&&n.displayName&&(o[a].displayName=n.displayName+"_"+a)}}}function f(e,t){if(t)for(var n in t){var r=t[n];if(t.hasOwnProperty(n)){var i=n in _;l(!i,'ReactClass: You are attempting to define a reserved property, `%s`, that shouldn\'t be on the "statics" key. Define it as an instance property instead; it will still be accessible on the constructor.',n);var o=n in e;l(!o,"ReactClass: You are attempting to define `%s` on your component more than once. This conflict may be due to a mixin.",n),e[n]=r}}}function h(e,t){l(e&&t&&"object"==typeof e&&"object"==typeof t,"mergeIntoWithNoDuplicateKeys(): Cannot merge non-objects.");for(var n in t)t.hasOwnProperty(n)&&(l(void 0===e[n],"mergeIntoWithNoDuplicateKeys(): Tried to merge two objects with the same key: `%s`. This conflict may be due to a mixin; in particular, this may be caused by two getInitialState() or getDefaultProps() methods returning objects with clashing keys.",n),e[n]=t[n]);return e}function v(e,t){return function(){var n=e.apply(this,arguments),r=t.apply(this,arguments);if(null==n)return r;if(null==r)return n;var i={};return h(i,n),h(i,r),i}}function y(e,t){return function(){e.apply(this,arguments),t.apply(this,arguments)}}function g(e,t){var n=t.bind(e);n.__reactBoundContext=e,n.__reactBoundMethod=t,n.__reactBoundArguments=null;var r=e.constructor.displayName,i=n.bind;return n.bind=function(o){for(var s=arguments.length,a=Array(s>1?s-1:0),l=1;l<s;l++)a[l-1]=arguments[l];if(o!==e&&null!==o)c(!1,"bind(): React component methods may only be bound to the component instance. See %s",r);else if(!a.length)return c(!1,"bind(): You are binding a component method to the component. React does this for you automatically in a high-performance way, so you can safely remove this call. See %s",r),n;var u=i.apply(n,arguments);return u.__reactBoundContext=e,u.__reactBoundMethod=t,u.__reactBoundArguments=a,u},n}function m(e){for(var t=e.__reactAutoBindPairs,n=0;n<t.length;n+=2){var r=t[n],i=t[n+1];e[r]=g(e,i)}}function w(e){var t=r(function(e,r,i){c(this instanceof t,"Something is calling a React component directly. Use a factory or JSX instead. See: https://fb.me/react-legacyfactory"),this.__reactAutoBindPairs.length&&m(this),this.props=e,this.context=r,this.refs=a,this.updater=i||n,this.state=null;var o=this.getInitialState?this.getInitialState():null;void 0===o&&this.getInitialState._isMockFunction&&(o=null),l("object"==typeof o&&!Array.isArray(o),"%s.getInitialState(): must return an object or null",t.displayName||"ReactCompositeComponent"),this.state=o});t.prototype=new x,t.prototype.constructor=t,t.prototype.__reactAutoBindPairs=[],S.forEach(p.bind(null,t)),p(t,E),p(t,e),p(t,T),t.getDefaultProps&&(t.defaultProps=t.getDefaultProps()),t.getDefaultProps&&(t.getDefaultProps.isReactClassApproved={}),t.prototype.getInitialState&&(t.prototype.getInitialState.isReactClassApproved={}),l(t.prototype.render,"createClass(...): Class specification must implement a `render` method."),c(!t.prototype.componentShouldUpdate,"%s has a method called componentShouldUpdate(). Did you mean shouldComponentUpdate()? The name is phrased as a question because the function is expected to return a value.",e.displayName||"A component"),c(!t.prototype.componentWillRecieveProps,"%s has a method called componentWillRecieveProps(). Did you mean componentWillReceiveProps()?",e.displayName||"A component");for(var i in b)t.prototype[i]||(t.prototype[i]=null);return t}var S=[],b={mixins:"DEFINE_MANY",statics:"DEFINE_MANY",propTypes:"DEFINE_MANY",contextTypes:"DEFINE_MANY",childContextTypes:"DEFINE_MANY",getDefaultProps:"DEFINE_MANY_MERGED",getInitialState:"DEFINE_MANY_MERGED",getChildContext:"DEFINE_MANY_MERGED",render:"DEFINE_ONCE",componentWillMount:"DEFINE_MANY",componentDidMount:"DEFINE_MANY",componentWillReceiveProps:"DEFINE_MANY",shouldComponentUpdate:"DEFINE_ONCE",componentWillUpdate:"DEFINE_MANY",componentDidUpdate:"DEFINE_MANY",componentWillUnmount:"DEFINE_MANY",updateComponent:"OVERRIDE_BASE"},_={displayName:function(e,t){e.displayName=t},mixins:function(e,t){if(t)for(var n=0;n<t.length;n++)p(e,t[n])},childContextTypes:function(e,t){i(e,t,"childContext"),e.childContextTypes=s({},e.childContextTypes,t)},contextTypes:function(e,t){i(e,t,"context"),e.contextTypes=s({},e.contextTypes,t)},getDefaultProps:function(e,t){e.getDefaultProps?e.getDefaultProps=v(e.getDefaultProps,t):e.getDefaultProps=t},propTypes:function(e,t){i(e,t,"prop"),e.propTypes=s({},e.propTypes,t)},statics:function(e,t){f(e,t)},autobind:function(){}},E={componentDidMount:function(){this.__isMounted=!0}},T={componentWillUnmount:function(){this.__isMounted=!1}},k={replaceState:function(e,t){this.updater.enqueueReplaceState(this,e,t)},isMounted:function(){return c(this.__didWarnIsMounted,"%s: isMounted is deprecated. Instead, make sure to clean up subscriptions and pending requests in componentWillUnmount to prevent memory leaks.",this.constructor&&this.constructor.displayName||this.name||"Component"),this.__didWarnIsMounted=!0,!!this.__isMounted}},x=function(){};return s(x.prototype,e.prototype,k),w}var o,s=n(8),a=n(9),l=n(10),c=n(11),u="mixins";o={prop:"prop",context:"context",childContext:"child context"},e.exports=i},function(e,t){/* | ||
object-assign | ||
@@ -6,3 +6,3 @@ (c) Sindre Sorhus | ||
*/ | ||
"use strict";function i(t){if(null===t||void 0===t)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}function n(){try{if(!Object.assign)return!1;var t=new String("abc");if(t[5]="de","5"===Object.getOwnPropertyNames(t)[0])return!1;for(var e={},i=0;i<10;i++)e["_"+String.fromCharCode(i)]=i;var n=Object.getOwnPropertyNames(e).map(function(t){return e[t]});if("0123456789"!==n.join(""))return!1;var s={};return"abcdefghijklmnopqrst".split("").forEach(function(t){s[t]=t}),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},s)).join("")}catch(t){return!1}}var s=Object.getOwnPropertySymbols,r=Object.prototype.hasOwnProperty,o=Object.prototype.propertyIsEnumerable;t.exports=n()?Object.assign:function(t,e){for(var n,a,l=i(t),c=1;c<arguments.length;c++){n=Object(arguments[c]);for(var u in n)r.call(n,u)&&(l[u]=n[u]);if(s){a=s(n);for(var d=0;d<a.length;d++)o.call(n,a[d])&&(l[a[d]]=n[a[d]])}}return l}},function(t,e){"use strict";function i(t){var e=t.currentSlide,i=t.targetSlide,r=t.slidesToShow,o=t.centerMode,a=t.rtl;return i>e?i>e+n(r,o,a)?"left":"right":i<e-s(r,o,a)?"right":"left"}function n(t,e,i){if(e){var n=(t-1)/2+1;return i&&t%2===0&&(n+=1),n}return i?0:t-1}function s(t,e,i){if(e){var n=(t-1)/2+1;return i||t%2!==0||(n+=1),n}return i?t-1:0}e.__esModule=!0,e.siblingDirection=i,e.slidesOnRight=n,e.slidesOnLeft=s;var r=e.getPreClones=function(t){return t.unslick||!t.infinite?0:t.variableWidth?t.slideCount:t.slidesToShow+(t.centerMode?1:0)},o=e.getPostClones=function(t){return t.unslick||!t.infinite?0:t.slideCount};e.getTotalSlides=function(t){return 1===t.slideCount?1:r(t)+t.slideCount+o(t)}},function(t,e,i){"use strict";function n(t){return t&&t.__esModule?t:{default:t}}e.__esModule=!0;var s=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var i=arguments[e];for(var n in i)Object.prototype.hasOwnProperty.call(i,n)&&(t[n]=i[n])}return t},r=i(2),o=n(r),a=i(6),l=n(a),c=i(5),u=i(7),d=n(u),p=i(10),h={update:function(t){var e,i=arguments.length>1&&void 0!==arguments[1]?arguments[1]:0,n=l.default.findDOMNode(this.list),s=o.default.Children.count(t.children),r=(0,p.getWidth)(n),a=(0,p.getWidth)(l.default.findDOMNode(this.track));if(t.vertical)e=Math.ceil((0,p.getWidth)(n));else{var u=t.centerMode&&2*parseInt(t.centerPadding);"%"===t.centerPadding.slice(-1)&&(u*=r/100),e=Math.ceil(((0,p.getWidth)(n)-u)/t.slidesToShow)}var h=(0,p.getHeight)(n.querySelector('[data-index="0"]')),f=h*t.slidesToShow;t.autoplay?this.autoPlay(t.autoplay):this.pause();var g=(0,p.getOnDemandLazySlides)({},this.props,this.state);g.length>0&&this.props.onLazyLoad&&this.props.onLazyLoad(g);var v=this.state.lazyLoadedList;this.setState({slideCount:s,slideWidth:e,listWidth:r,trackWidth:a,slideHeight:h,listHeight:f,lazyLoadedList:v.concat(g)},function(){e||i<2&&this.update(this.props,i+1);var n=(0,c.getTrackLeft)((0,d.default)({slideIndex:this.state.currentSlide,trackRef:this.track},t,this.state)),s=(0,c.getTrackCSS)((0,d.default)({left:n},t,this.state));this.setState({trackStyle:s})})},adaptHeight:function(){if(this.props.adaptiveHeight){var t='[data-index="'+this.state.currentSlide+'"]';if(this.list){var e=l.default.findDOMNode(this.list),i=e.querySelector(t)||{};e.style.height=(i.offsetHeight||0)+"px"}}},slideHandler:function(t){var e,i,n,s,r,o=this;if(!this.props.waitForAnimate||!this.state.animating){if(this.props.fade){if(i=this.state.currentSlide,this.props.infinite===!1&&(t<0||t>=this.state.slideCount))return;return e=t<0?t+this.state.slideCount:t>=this.state.slideCount?t-this.state.slideCount:t,this.props.lazyLoad&&this.state.lazyLoadedList.indexOf(e)<0&&(this.setState(function(t,i){return{lazyLoadedList:t.lazyLoadedList.concat(e)}}),this.props.onLazyLoad&&this.props.onLazyLoad([e])),r=function(){o.setState({animating:!1}),o.props.afterChange&&o.props.afterChange(e),delete o.animationEndCallback},this.setState({animating:!0,currentSlide:e},function(){o.props.asNavFor&&o.props.asNavFor.innerSlider.state.currentSlide!==o.state.currentSlide&&o.props.asNavFor.innerSlider.slideHandler(t),o.animationEndCallback=setTimeout(r,o.props.speed)}),this.props.beforeChange&&this.props.beforeChange(this.state.currentSlide,e),void this.autoPlay()}if(e=t,e<0?i=this.props.infinite===!1?0:this.state.slideCount%this.props.slidesToScroll!==0?this.state.slideCount-this.state.slideCount%this.props.slidesToScroll:this.state.slideCount+e:this.props.centerMode&&e>=this.state.slideCount?this.props.infinite===!1?(e=this.state.slideCount-1,i=this.state.slideCount-1):(e=this.state.slideCount,i=0):i=e>=this.state.slideCount?this.props.infinite===!1?this.state.slideCount-this.props.slidesToShow:this.state.slideCount%this.props.slidesToScroll!==0?0:e-this.state.slideCount:this.state.currentSlide+this.slidesToShow<this.state.slideCount&&e+this.props.slidesToShow>=this.state.slideCount?this.props.infinite===!1?this.state.slideCount-this.props.slidesToShow:(this.state.slideCount-e)%this.props.slidesToScroll!==0?this.state.slideCount-this.props.slidesToShow:e:e,n=(0,c.getTrackLeft)((0,d.default)({slideIndex:e,trackRef:this.track},this.props,this.state)),s=(0,c.getTrackLeft)((0,d.default)({slideIndex:i,trackRef:this.track},this.props,this.state)),this.props.infinite===!1&&(n===s&&(e=i),n=s),this.props.beforeChange&&this.props.beforeChange(this.state.currentSlide,i),this.props.lazyLoad){var a=(0,p.getOnDemandLazySlides)((0,d.default)({},this.props,this.state,{currentSlide:e}));a.length>0&&(this.setState(function(t,e){return{lazyLoadedList:t.lazyLoadedList.concat(a)}}),this.props.onLazyLoad&&this.props.onLazyLoad(a))}if(this.props.useCSS===!1)this.setState({currentSlide:i,trackStyle:(0,c.getTrackCSS)((0,d.default)({left:s},this.props,this.state))},function(){this.props.afterChange&&this.props.afterChange(i)});else{var l={animating:!1,currentSlide:i,trackStyle:(0,c.getTrackCSS)((0,d.default)({left:s},this.props,this.state)),swipeLeft:null};r=function(){o.setState(l,function(){o.props.afterChange&&o.props.afterChange(i),delete o.animationEndCallback})},this.setState({animating:!0,currentSlide:i,trackStyle:(0,c.getTrackAnimateCSS)((0,d.default)({left:n},this.props,this.state))},function(){o.props.asNavFor&&o.props.asNavFor.innerSlider.state.currentSlide!==o.state.currentSlide&&o.props.asNavFor.innerSlider.slideHandler(t),o.animationEndCallback=setTimeout(r,o.props.speed)})}this.autoPlay()}},play:function(){var t;if(this.props.rtl)t=this.state.currentSlide-this.props.slidesToScroll;else{if(!(0,p.canGoNext)(s({},this.props,this.state)))return!1;t=this.state.currentSlide+this.props.slidesToScroll}this.slideHandler(t)},autoPlay:function(){var t=arguments.length>0&&void 0!==arguments[0]&&arguments[0];this.autoplayTimer&&clearTimeout(this.autoplayTimer),(t||this.props.autoplay)&&(this.autoplayTimer=setTimeout(this.play,this.props.autoplaySpeed))},pause:function(){this.autoplayTimer&&(clearTimeout(this.autoplayTimer),this.autoplayTimer=null)}};e.default=h},function(t,e,i){"use strict";function n(t){return t&&t.__esModule?t:{default:t}}e.__esModule=!0,e.initializedState=e.extractObject=e.canGoNext=e.getSwipeDirection=e.getHeight=e.getWidth=e.slidesOnRight=e.slidesOnLeft=e.lazyEndIndex=e.lazyStartIndex=e.getRequiredLazySlides=e.getOnDemandLazySlides=void 0;var s=i(2),r=n(s),o=i(6),a=n(o),l=e.getOnDemandLazySlides=function(t){for(var e=[],i=c(t),n=u(t),s=i;s<n;s++)t.lazyLoadedList.indexOf(s)<0&&e.push(s);return e},c=(e.getRequiredLazySlides=function(t){for(var e=[],i=c(t),n=u(t),s=i;s<n;s++)e.push(s);return e},e.lazyStartIndex=function(t){return t.currentSlide-d(t)}),u=e.lazyEndIndex=function(t){return t.currentSlide+p(t)},d=e.slidesOnLeft=function(t){return t.centerMode?Math.floor(t.slidesToShow/2)+(parseInt(t.centerPadding)>0?1:0):0},p=e.slidesOnRight=function(t){return t.centerMode?Math.floor((t.slidesToShow-1)/2)+1+(parseInt(t.centerPadding)>0?1:0):t.slidesToShow},h=e.getWidth=function(t){return t&&t.offsetWidth||0},f=e.getHeight=function(t){return t&&t.offsetHeight||0};e.getSwipeDirection=function(t){var e,i,n,s,r=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return e=t.startX-t.curX,i=t.startY-t.curY,n=Math.atan2(i,e),s=Math.round(180*n/Math.PI),s<0&&(s=360-Math.abs(s)),s<=45&&s>=0||s<=360&&s>=315?"left":s>=135&&s<=225?"right":r===!0?s>=35&&s<=135?"up":"down":"vertical"},e.canGoNext=function(t){var e=!0;return t.infinite||(t.centerMode&&t.currentSlide>=t.slideCount-1?e=!1:(t.slideCount<=t.slidesToShow||t.currentSlide>=t.slideCount-t.slidesToShow)&&(e=!1)),e},e.extractObject=function(t,e){var i={};return e.forEach(function(e){return i[e]=t[e]}),i},e.initializedState=function(t){var e=r.default.Children.count(t.children),i=Math.ceil(h(a.default.findDOMNode(t.listRef))),n=Math.ceil(h(a.default.findDOMNode(t.trackRef))),s=void 0;if(t.vertical)s=i;else{var o=t.centerMode&&2*parseInt(t.centerPadding);"string"==typeof t.centerPadding&&"%"===t.centerPadding.slice(-1)&&(o*=i/100),s=Math.ceil((i-o)/t.slidesToShow)}var c=f(a.default.findDOMNode(t.listRef).querySelector('[data-index="0"]')),u=c*t.slidesToShow,d=t.currentSlide||t.initialSlide;t.rtl&&!t.currentSlide&&(d=e-1-t.initialSlide);var p=t.lazyLoadedList||[],g=l({currentSlide:d,lazyLoadedList:p},t);return p.concat(g),{slideCount:e,slideWidth:s,listWidth:i,trackWidth:n,currentSlide:d,slideHeight:c,listHeight:u,lazyLoadedList:p}}},function(t,e){"use strict";var i={animating:!1,dragging:!1,currentDirection:0,currentLeft:null,currentSlide:0,direction:1,listWidth:null,listHeight:null,scrolling:!1,slideCount:null,slideWidth:null,slideHeight:null,swiping:!1,swipeLeft:null,touchObject:{startX:0,startY:0,curX:0,curY:0},lazyLoadedList:[],initialized:!1,edgeDragged:!1,swiped:!1,trackStyle:{},trackWidth:0};t.exports=i},function(t,e,i){"use strict";function n(t){return t&&t.__esModule?t:{default:t}}e.__esModule=!0;var s=i(2),r=n(s),o={className:"",accessibility:!0,adaptiveHeight:!1,arrows:!0,autoplay:!1,autoplaySpeed:3e3,centerMode:!1,centerPadding:"50px",cssEase:"ease",customPaging:function(t){return r.default.createElement("button",null,t+1)},dots:!1,dotsClass:"slick-dots",draggable:!0,easing:"linear",edgeFriction:.35,fade:!1,focusOnSelect:!1,infinite:!0,initialSlide:0,lazyLoad:!1,pauseOnHover:!0,responsive:null,rtl:!1,slide:"div",slidesToShow:1,slidesToScroll:1,speed:500,swipe:!0,swipeToSlide:!1,touchMove:!0,touchThreshold:5,useCSS:!0,variableWidth:!1,vertical:!1,waitForAnimate:!0,afterChange:null,beforeChange:null,edgeEvent:null,init:null,swipeEvent:null,nextArrow:null,prevArrow:null,appendDots:function(t){return r.default.createElement("ul",{style:{display:"block"}},t)}};e.default=o},function(t,e,i){"use strict";var n=i(2),s=i(14);if("undefined"==typeof n)throw Error("create-react-class could not find the React object. If you are using script tags, make sure that React is being loaded before create-react-class.");var r=(new n.Component).updater;t.exports=s(n.Component,n.isValidElement,r)},function(t,e,i){"use strict";function n(t){return t}function s(t,e,i){function s(t,e,i){for(var n in e)e.hasOwnProperty(n)&&c("function"==typeof e[n],"%s: %s type `%s` is invalid; it must be a function, usually from React.PropTypes.",t.displayName||"ReactClass",r[i],n)}function d(t,e){var i=b.hasOwnProperty(e)?b[e]:null;x.hasOwnProperty(e)&&l("OVERRIDE_BASE"===i,"ReactClassInterface: You are attempting to override `%s` from your class specification. Ensure that your method names do not overlap with React methods.",e),t&&l("DEFINE_MANY"===i||"DEFINE_MANY_MERGED"===i,"ReactClassInterface: You are attempting to define `%s` on your component more than once. This conflict may be due to a mixin.",e)}function p(t,i){if(!i){var n=typeof i,s="object"===n&&null!==i;return void c(s,"%s: You're attempting to include a mixin that is either null or not an object. Check the mixins included by the component, as well as any mixins they include themselves. Expected object but got %s.",t.displayName||"ReactClass",null===i?null:n)}l("function"!=typeof i,"ReactClass: You're attempting to use a component class or function as a mixin. Instead, just use a regular object."),l(!e(i),"ReactClass: You're attempting to use a component as a mixin. Instead, just use a regular object.");var r=t.prototype,o=r.__reactAutoBindPairs;i.hasOwnProperty(u)&&T.mixins(t,i.mixins);for(var a in i)if(i.hasOwnProperty(a)&&a!==u){var p=i[a],h=r.hasOwnProperty(a);if(d(h,a),T.hasOwnProperty(a))T[a](t,p);else{var f=b.hasOwnProperty(a),y="function"==typeof p,S=y&&!f&&!h&&i.autobind!==!1;if(S)o.push(a,p),r[a]=p;else if(h){var m=b[a];l(f&&("DEFINE_MANY_MERGED"===m||"DEFINE_MANY"===m),"ReactClass: Unexpected spec policy %s for key %s when mixing in component specs.",m,a),"DEFINE_MANY_MERGED"===m?r[a]=g(r[a],p):"DEFINE_MANY"===m&&(r[a]=v(r[a],p))}else r[a]=p,"function"==typeof p&&i.displayName&&(r[a].displayName=i.displayName+"_"+a)}}}function h(t,e){if(e)for(var i in e){var n=e[i];if(e.hasOwnProperty(i)){var s=i in T;l(!s,'ReactClass: You are attempting to define a reserved property, `%s`, that shouldn\'t be on the "statics" key. Define it as an instance property instead; it will still be accessible on the constructor.',i);var r=i in t;l(!r,"ReactClass: You are attempting to define `%s` on your component more than once. This conflict may be due to a mixin.",i),t[i]=n}}}function f(t,e){l(t&&e&&"object"==typeof t&&"object"==typeof e,"mergeIntoWithNoDuplicateKeys(): Cannot merge non-objects.");for(var i in e)e.hasOwnProperty(i)&&(l(void 0===t[i],"mergeIntoWithNoDuplicateKeys(): Tried to merge two objects with the same key: `%s`. This conflict may be due to a mixin; in particular, this may be caused by two getInitialState() or getDefaultProps() methods returning objects with clashing keys.",i),t[i]=e[i]);return t}function g(t,e){return function(){var i=t.apply(this,arguments),n=e.apply(this,arguments);if(null==i)return n;if(null==n)return i;var s={};return f(s,i),f(s,n),s}}function v(t,e){return function(){t.apply(this,arguments),e.apply(this,arguments)}}function y(t,e){var i=e.bind(t);i.__reactBoundContext=t,i.__reactBoundMethod=e,i.__reactBoundArguments=null;var n=t.constructor.displayName,s=i.bind;return i.bind=function(r){for(var o=arguments.length,a=Array(o>1?o-1:0),l=1;l<o;l++)a[l-1]=arguments[l];if(r!==t&&null!==r)c(!1,"bind(): React component methods may only be bound to the component instance. See %s",n);else if(!a.length)return c(!1,"bind(): You are binding a component method to the component. React does this for you automatically in a high-performance way, so you can safely remove this call. See %s",n),i;var u=s.apply(i,arguments);return u.__reactBoundContext=t,u.__reactBoundMethod=e,u.__reactBoundArguments=a,u},i}function S(t){for(var e=t.__reactAutoBindPairs,i=0;i<e.length;i+=2){var n=e[i],s=e[i+1];t[n]=y(t,s)}}function m(t){var e=n(function(t,n,s){c(this instanceof e,"Something is calling a React component directly. Use a factory or JSX instead. See: https://fb.me/react-legacyfactory"),this.__reactAutoBindPairs.length&&S(this),this.props=t,this.context=n,this.refs=a,this.updater=s||i,this.state=null;var r=this.getInitialState?this.getInitialState():null;void 0===r&&this.getInitialState._isMockFunction&&(r=null),l("object"==typeof r&&!Array.isArray(r),"%s.getInitialState(): must return an object or null",e.displayName||"ReactCompositeComponent"),this.state=r});e.prototype=new E,e.prototype.constructor=e,e.prototype.__reactAutoBindPairs=[],w.forEach(p.bind(null,e)),p(e,k),p(e,t),p(e,C),e.getDefaultProps&&(e.defaultProps=e.getDefaultProps()),e.getDefaultProps&&(e.getDefaultProps.isReactClassApproved={}),e.prototype.getInitialState&&(e.prototype.getInitialState.isReactClassApproved={}),l(e.prototype.render,"createClass(...): Class specification must implement a `render` method."),c(!e.prototype.componentShouldUpdate,"%s has a method called componentShouldUpdate(). Did you mean shouldComponentUpdate()? The name is phrased as a question because the function is expected to return a value.",t.displayName||"A component"),c(!e.prototype.componentWillRecieveProps,"%s has a method called componentWillRecieveProps(). Did you mean componentWillReceiveProps()?",t.displayName||"A component");for(var s in b)e.prototype[s]||(e.prototype[s]=null);return e}var w=[],b={mixins:"DEFINE_MANY",statics:"DEFINE_MANY",propTypes:"DEFINE_MANY",contextTypes:"DEFINE_MANY",childContextTypes:"DEFINE_MANY",getDefaultProps:"DEFINE_MANY_MERGED",getInitialState:"DEFINE_MANY_MERGED",getChildContext:"DEFINE_MANY_MERGED",render:"DEFINE_ONCE",componentWillMount:"DEFINE_MANY",componentDidMount:"DEFINE_MANY",componentWillReceiveProps:"DEFINE_MANY",shouldComponentUpdate:"DEFINE_ONCE",componentWillUpdate:"DEFINE_MANY",componentDidUpdate:"DEFINE_MANY",componentWillUnmount:"DEFINE_MANY",updateComponent:"OVERRIDE_BASE"},T={displayName:function(t,e){t.displayName=e},mixins:function(t,e){if(e)for(var i=0;i<e.length;i++)p(t,e[i])},childContextTypes:function(t,e){s(t,e,"childContext"),t.childContextTypes=o({},t.childContextTypes,e)},contextTypes:function(t,e){s(t,e,"context"),t.contextTypes=o({},t.contextTypes,e)},getDefaultProps:function(t,e){t.getDefaultProps?t.getDefaultProps=g(t.getDefaultProps,e):t.getDefaultProps=e},propTypes:function(t,e){s(t,e,"prop"),t.propTypes=o({},t.propTypes,e)},statics:function(t,e){h(t,e)},autobind:function(){}},k={componentDidMount:function(){this.__isMounted=!0}},C={componentWillUnmount:function(){this.__isMounted=!1}},x={replaceState:function(t,e){this.updater.enqueueReplaceState(this,t,e)},isMounted:function(){return c(this.__didWarnIsMounted,"%s: isMounted is deprecated. Instead, make sure to clean up subscriptions and pending requests in componentWillUnmount to prevent memory leaks.",this.constructor&&this.constructor.displayName||this.name||"Component"),this.__didWarnIsMounted=!0,!!this.__isMounted}},E=function(){};return o(E.prototype,t.prototype,x),m}var r,o=i(7),a=i(15),l=i(16),c=i(17),u="mixins";r={prop:"prop",context:"context",childContext:"child context"},t.exports=s},function(t,e,i){"use strict";var n={};Object.freeze(n),t.exports=n},function(t,e,i){"use strict";function n(t,e,i,n,r,o,a,l){if(s(e),!t){var c;if(void 0===e)c=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var u=[i,n,r,o,a,l],d=0;c=new Error(e.replace(/%s/g,function(){return u[d++]})),c.name="Invariant Violation"}throw c.framesToPop=1,c}}var s=function(t){};s=function(t){if(void 0===t)throw new Error("invariant requires an error message argument")},t.exports=n},function(t,e,i){"use strict";var n=i(18),s=n,r=function(t){for(var e=arguments.length,i=Array(e>1?e-1:0),n=1;n<e;n++)i[n-1]=arguments[n];var s=0,r="Warning: "+t.replace(/%s/g,function(){return i[s++]});"undefined"!=typeof console&&console.error(r);try{throw new Error(r)}catch(t){}};s=function(t,e){if(void 0===e)throw new Error("`warning(condition, format, ...args)` requires a warning message argument");if(0!==e.indexOf("Failed Composite propType: ")&&!t){for(var i=arguments.length,n=Array(i>2?i-2:0),s=2;s<i;s++)n[s-2]=arguments[s];r.apply(void 0,[e].concat(n))}},t.exports=s},function(t,e){"use strict";function i(t){return function(){return t}}var n=function(){};n.thatReturns=i,n.thatReturnsFalse=i(!1),n.thatReturnsTrue=i(!0),n.thatReturnsNull=i(null),n.thatReturnsThis=function(){return this},n.thatReturnsArgument=function(t){return t},t.exports=n},function(t,e,i){var n,s;/*! | ||
"use strict";function n(e){if(null===e||void 0===e)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(e)}function r(){try{if(!Object.assign)return!1;var e=new String("abc");if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var t={},n=0;n<10;n++)t["_"+String.fromCharCode(n)]=n;var r=Object.getOwnPropertyNames(t).map(function(e){return t[e]});if("0123456789"!==r.join(""))return!1;var i={};return"abcdefghijklmnopqrst".split("").forEach(function(e){i[e]=e}),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},i)).join("")}catch(e){return!1}}var i=Object.getOwnPropertySymbols,o=Object.prototype.hasOwnProperty,s=Object.prototype.propertyIsEnumerable;e.exports=r()?Object.assign:function(e,t){for(var r,a,l=n(e),c=1;c<arguments.length;c++){r=Object(arguments[c]);for(var u in r)o.call(r,u)&&(l[u]=r[u]);if(i){a=i(r);for(var d=0;d<a.length;d++)s.call(r,a[d])&&(l[a[d]]=r[a[d]])}}return l}},function(e,t,n){"use strict";var r={};Object.freeze(r),e.exports=r},function(e,t,n){"use strict";function r(e,t,n,r,o,s,a,l){if(i(t),!e){var c;if(void 0===t)c=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var u=[n,r,o,s,a,l],d=0;c=new Error(t.replace(/%s/g,function(){return u[d++]})),c.name="Invariant Violation"}throw c.framesToPop=1,c}}var i=function(e){};i=function(e){if(void 0===e)throw new Error("invariant requires an error message argument")},e.exports=r},function(e,t,n){"use strict";var r=n(12),i=r,o=function(e){for(var t=arguments.length,n=Array(t>1?t-1:0),r=1;r<t;r++)n[r-1]=arguments[r];var i=0,o="Warning: "+e.replace(/%s/g,function(){return n[i++]});"undefined"!=typeof console&&console.error(o);try{throw new Error(o)}catch(e){}};i=function(e,t){if(void 0===t)throw new Error("`warning(condition, format, ...args)` requires a warning message argument");if(0!==t.indexOf("Failed Composite propType: ")&&!e){for(var n=arguments.length,r=Array(n>2?n-2:0),i=2;i<n;i++)r[i-2]=arguments[i];o.apply(void 0,[t].concat(r))}},e.exports=i},function(e,t){"use strict";function n(e){return function(){return e}}var r=function(){};r.thatReturns=n,r.thatReturnsFalse=n(!1),r.thatReturnsTrue=n(!0),r.thatReturnsNull=n(null),r.thatReturnsThis=function(){return this},r.thatReturnsArgument=function(e){return e},e.exports=r},function(e,t,n){var r,i;/*! | ||
Copyright (c) 2016 Jed Watson. | ||
@@ -12,2 +12,2 @@ Licensed under the MIT License (MIT), see | ||
*/ | ||
!function(){"use strict";function i(){for(var t=[],e=0;e<arguments.length;e++){var n=arguments[e];if(n){var s=typeof n;if("string"===s||"number"===s)t.push(n);else if(Array.isArray(n))t.push(i.apply(null,n));else if("object"===s)for(var o in n)r.call(n,o)&&n[o]&&t.push(o)}}return t.join(" ")}var r={}.hasOwnProperty;"undefined"!=typeof t&&t.exports?t.exports=i:(n=[],s=function(){return i}.apply(e,n),!(void 0!==s&&(t.exports=s)))}()},function(t,e,i){"use strict";function n(t){return t&&t.__esModule?t:{default:t}}function s(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function r(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function o(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}e.__esModule=!0,e.Track=void 0;var a=i(2),l=n(a),c=i(7),u=n(c),d=i(19),p=n(d),h=i(8),f=i(10),g=function(t){var e,i,n,s,r;r=t.rtl?t.slideCount-1-t.index:t.index,n=r<0||r>=t.slideCount,t.centerMode?(s=Math.floor(t.slidesToShow/2),i=(r-t.currentSlide)%t.slideCount===0,r>t.currentSlide-s-1&&r<=t.currentSlide+s&&(e=!0)):e=t.currentSlide<=r&&r<t.currentSlide+t.slidesToShow;var o=r===t.currentSlide;return(0,p.default)({"slick-slide":!0,"slick-active":e,"slick-center":i,"slick-cloned":n,"slick-current":o})},v=function(t){var e={};return void 0!==t.variableWidth&&t.variableWidth!==!1||(e.width=t.slideWidth),t.fade&&(e.position="relative",t.vertical?e.top=-t.index*t.slideHeight:e.left=-t.index*t.slideWidth,e.opacity=t.currentSlide===t.index?1:0,e.transition="opacity "+t.speed+"ms "+t.cssEase+", visibility "+t.speed+"ms "+t.cssEase,e.WebkitTransition="opacity "+t.speed+"ms "+t.cssEase+", visibility "+t.speed+"ms "+t.cssEase),e},y=function(t,e){return t.key||e},S=function(t){var e,i=[],n=[],s=[],r=l.default.Children.count(t.children),o=(0,f.lazyStartIndex)(t),a=(0,f.lazyEndIndex)(t);return l.default.Children.forEach(t.children,function(c,d){var f=void 0,S={message:"children",index:d,slidesToScroll:t.slidesToScroll,currentSlide:t.currentSlide};f=!t.lazyLoad||t.lazyLoad&&t.lazyLoadedList.indexOf(d)>=0?c:l.default.createElement("div",null);var m=v((0,u.default)({},t,{index:d})),w=f.props.className||"";if(i.push(l.default.cloneElement(f,{key:"original"+y(f,d),"data-index":d,className:(0,p.default)(g((0,u.default)({index:d},t)),w),tabIndex:"-1",style:(0,u.default)({outline:"none"},f.props.style||{},m),onClick:function(e){f.props&&f.props.onClick&&f.props.onClick(e),t.focusOnSelect&&t.focusOnSelect(S)}})),t.infinite&&t.fade===!1){var b=r-d;b<=(0,h.getPreClones)(t)&&r!==t.slidesToShow&&(e=-b,e>=o&&(f=c),n.push(l.default.cloneElement(f,{key:"precloned"+y(f,e),"data-index":e,tabIndex:"-1",className:(0,p.default)(g((0,u.default)({index:e},t)),w),style:(0,u.default)({},f.props.style||{},m),onClick:function(e){f.props&&f.props.onClick&&f.props.onClick(e),t.focusOnSelect&&t.focusOnSelect(S)}}))),r!==t.slidesToShow&&(e=r+d,e<a&&(f=c),s.push(l.default.cloneElement(f,{key:"postcloned"+y(f,e),"data-index":e,tabIndex:"-1",className:(0,p.default)(g((0,u.default)({index:e},t)),w),style:(0,u.default)({},f.props.style||{},m),onClick:function(e){f.props&&f.props.onClick&&f.props.onClick(e),t.focusOnSelect&&t.focusOnSelect(S)}})))}}),t.rtl?n.concat(i,s).reverse():n.concat(i,s)};e.Track=function(t){function e(){return s(this,e),r(this,t.apply(this,arguments))}return o(e,t),e.prototype.render=function(){var t=S(this.props);return l.default.createElement("div",{className:"slick-track",style:this.props.trackStyle},t)},e}(l.default.Component)},function(t,e,i){"use strict";function n(t){return t&&t.__esModule?t:{default:t}}function s(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function r(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function o(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}e.__esModule=!0,e.Dots=void 0;var a=i(2),l=n(a),c=i(19),u=n(c),d=function(t){var e;return e=t.infinite?Math.ceil(t.slideCount/t.slidesToScroll):Math.ceil((t.slideCount-t.slidesToShow)/t.slidesToScroll)+1};e.Dots=function(t){function e(){return s(this,e),r(this,t.apply(this,arguments))}return o(e,t),e.prototype.clickHandler=function(t,e){e.preventDefault(),this.props.clickHandler(t)},e.prototype.render=function(){var t=this,e=d({slideCount:this.props.slideCount,slidesToScroll:this.props.slidesToScroll,slidesToShow:this.props.slidesToShow,infinite:this.props.infinite}),i=Array.apply(null,Array(e+1).join("0").split("")).map(function(e,i){var n=i*t.props.slidesToScroll,s=i*t.props.slidesToScroll+(t.props.slidesToScroll-1),r=(0,u.default)({"slick-active":t.props.currentSlide>=n&&t.props.currentSlide<=s}),o={message:"dots",index:i,slidesToScroll:t.props.slidesToScroll,currentSlide:t.props.currentSlide},a=t.clickHandler.bind(t,o);return l.default.createElement("li",{key:i,className:r},l.default.cloneElement(t.props.customPaging(i),{onClick:a}))});return l.default.cloneElement(this.props.appendDots(i),{className:this.props.dotsClass})},e}(l.default.Component)},function(t,e,i){"use strict";function n(t){return t&&t.__esModule?t:{default:t}}function s(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function r(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function o(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}e.__esModule=!0,e.NextArrow=e.PrevArrow=void 0;var a=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var i=arguments[e];for(var n in i)Object.prototype.hasOwnProperty.call(i,n)&&(t[n]=i[n])}return t},l=i(2),c=n(l),u=i(19),d=n(u),p=i(9),h=(n(p),i(10));e.PrevArrow=function(t){function e(){return s(this,e),r(this,t.apply(this,arguments))}return o(e,t),e.prototype.clickHandler=function(t,e){e&&e.preventDefault(),this.props.clickHandler(t,e)},e.prototype.render=function(){var t={"slick-arrow":!0,"slick-prev":!0},e=this.clickHandler.bind(this,{message:"previous"});!this.props.infinite&&(0===this.props.currentSlide||this.props.slideCount<=this.props.slidesToShow)&&(t["slick-disabled"]=!0,e=null);var i={key:"0","data-role":"none",className:(0,d.default)(t),style:{display:"block"},onClick:e},n={currentSlide:this.props.currentSlide,slideCount:this.props.slideCount},s=void 0;return s=this.props.prevArrow?c.default.cloneElement(this.props.prevArrow,a({},i,n)):c.default.createElement("button",a({key:"0",type:"button"},i)," Previous")},e}(c.default.Component),e.NextArrow=function(t){function e(){return s(this,e),r(this,t.apply(this,arguments))}return o(e,t),e.prototype.clickHandler=function(t,e){e&&e.preventDefault(),this.props.clickHandler(t,e)},e.prototype.render=function(){var t={"slick-arrow":!0,"slick-next":!0},e=this.clickHandler.bind(this,{message:"next"});(0,h.canGoNext)(this.props)||(t["slick-disabled"]=!0,e=null);var i={key:"1","data-role":"none",className:(0,d.default)(t),style:{display:"block"},onClick:e},n={currentSlide:this.props.currentSlide,slideCount:this.props.slideCount},s=void 0;return s=this.props.nextArrow?c.default.cloneElement(this.props.nextArrow,a({},i,n)):c.default.createElement("button",a({key:"1",type:"button"},i)," Next")},e}(c.default.Component)},function(t,e,i){var n=i(24),s=function(t){var e=/[height|width]$/;return e.test(t)},r=function(t){var e="",i=Object.keys(t);return i.forEach(function(r,o){var a=t[r];r=n(r),s(r)&&"number"==typeof a&&(a+="px"),e+=a===!0?r:a===!1?"not "+r:"("+r+": "+a+")",o<i.length-1&&(e+=" and ")}),e},o=function(t){var e="";return"string"==typeof t?t:t instanceof Array?(t.forEach(function(i,n){e+=r(i),n<t.length-1&&(e+=", ")}),e):r(t)};t.exports=o},function(t,e){var i=function(t){return t.replace(/[A-Z]/g,function(t){return"-"+t.toLowerCase()}).toLowerCase()};t.exports=i},function(t,e){var i=!("undefined"==typeof window||!window.document||!window.document.createElement);t.exports=i},function(t,e,i){var n=i(27);t.exports=new n},function(t,e,i){function n(){if(!window.matchMedia)throw new Error("matchMedia not present, legacy browsers require a polyfill");this.queries={},this.browserIsIncapable=!window.matchMedia("only all").matches}var s=i(28),r=i(30),o=r.each,a=r.isFunction,l=r.isArray;n.prototype={constructor:n,register:function(t,e,i){var n=this.queries,r=i&&this.browserIsIncapable;return n[t]||(n[t]=new s(t,r)),a(e)&&(e={match:e}),l(e)||(e=[e]),o(e,function(e){a(e)&&(e={match:e}),n[t].addHandler(e)}),this},unregister:function(t,e){var i=this.queries[t];return i&&(e?i.removeHandler(e):(i.clear(),delete this.queries[t])),this}},t.exports=n},function(t,e,i){function n(t,e){this.query=t,this.isUnconditional=e,this.handlers=[],this.mql=window.matchMedia(t);var i=this;this.listener=function(t){i.mql=t.currentTarget||t,i.assess()},this.mql.addListener(this.listener)}var s=i(29),r=i(30).each;n.prototype={constuctor:n,addHandler:function(t){var e=new s(t);this.handlers.push(e),this.matches()&&e.on()},removeHandler:function(t){var e=this.handlers;r(e,function(i,n){if(i.equals(t))return i.destroy(),!e.splice(n,1)})},matches:function(){return this.mql.matches||this.isUnconditional},clear:function(){r(this.handlers,function(t){t.destroy()}),this.mql.removeListener(this.listener),this.handlers.length=0},assess:function(){var t=this.matches()?"on":"off";r(this.handlers,function(e){e[t]()})}},t.exports=n},function(t,e){function i(t){this.options=t,!t.deferSetup&&this.setup()}i.prototype={constructor:i,setup:function(){this.options.setup&&this.options.setup(),this.initialised=!0},on:function(){!this.initialised&&this.setup(),this.options.match&&this.options.match()},off:function(){this.options.unmatch&&this.options.unmatch()},destroy:function(){this.options.destroy?this.options.destroy():this.off()},equals:function(t){return this.options===t||this.options.match===t}},t.exports=i},function(t,e){function i(t,e){var i,n=0,s=t.length;for(n;n<s&&(i=e(t[n],n),i!==!1);n++);}function n(t){return"[object Array]"===Object.prototype.toString.apply(t)}function s(t){return"function"==typeof t}t.exports={isFunction:s,isArray:n,each:i}}])}); | ||
!function(){"use strict";function n(){for(var e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var i=typeof r;if("string"===i||"number"===i)e.push(r);else if(Array.isArray(r))e.push(n.apply(null,r));else if("object"===i)for(var s in r)o.call(r,s)&&r[s]&&e.push(s)}}return e.join(" ")}var o={}.hasOwnProperty;"undefined"!=typeof e&&e.exports?e.exports=n:(r=[],i=function(){return n}.apply(t,r),!(void 0!==i&&(e.exports=i)))}()},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0,t.slidesOnLeft=t.slidesOnRight=t.siblingDirection=t.getTotalSlides=t.getPostClones=t.getPreClones=t.getTrackLeft=t.getTrackAnimateCSS=t.getTrackCSS=t.checkSpecKeys=t.getSlideCount=t.checkNavigable=t.getNavigableIndexes=t.swipeEnd=t.swipeMove=t.swipeStart=t.keyHandler=t.changeSlide=t.slideHandler=t.initializedState=t.extractObject=t.canGoNext=t.getSwipeDirection=t.getHeight=t.getWidth=t.lazySlidesOnRight=t.lazySlidesOnLeft=t.lazyEndIndex=t.lazyStartIndex=t.getRequiredLazySlides=t.getOnDemandLazySlides=void 0;var i=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},o=n(2),s=r(o),a=n(15),l=r(a),c=t.getOnDemandLazySlides=function(e){for(var t=[],n=u(e),r=d(e),i=n;i<r;i++)e.lazyLoadedList.indexOf(i)<0&&t.push(i);return t},u=(t.getRequiredLazySlides=function(e){for(var t=[],n=u(e),r=d(e),i=n;i<r;i++)t.push(i);return t},t.lazyStartIndex=function(e){return e.currentSlide-p(e)}),d=t.lazyEndIndex=function(e){return e.currentSlide+f(e)},p=t.lazySlidesOnLeft=function(e){return e.centerMode?Math.floor(e.slidesToShow/2)+(parseInt(e.centerPadding)>0?1:0):0},f=t.lazySlidesOnRight=function(e){return e.centerMode?Math.floor((e.slidesToShow-1)/2)+1+(parseInt(e.centerPadding)>0?1:0):e.slidesToShow},h=t.getWidth=function(e){return e&&e.offsetWidth||0},v=t.getHeight=function(e){return e&&e.offsetHeight||0},y=t.getSwipeDirection=function(e){var t,n,r,i,o=arguments.length>1&&void 0!==arguments[1]&&arguments[1];return t=e.startX-e.curX,n=e.startY-e.curY,r=Math.atan2(n,t),i=Math.round(180*r/Math.PI),i<0&&(i=360-Math.abs(i)),i<=45&&i>=0||i<=360&&i>=315?"left":i>=135&&i<=225?"right":o===!0?i>=35&&i<=135?"up":"down":"vertical"},g=t.canGoNext=function(e){var t=!0;return e.infinite||(e.centerMode&&e.currentSlide>=e.slideCount-1?t=!1:(e.slideCount<=e.slidesToShow||e.currentSlide>=e.slideCount-e.slidesToShow)&&(t=!1)),t},m=(t.extractObject=function(e,t){var n={};return t.forEach(function(t){return n[t]=e[t]}),n},t.initializedState=function(e){var t=s.default.Children.count(e.children),n=Math.ceil(h(l.default.findDOMNode(e.listRef))),r=Math.ceil(h(l.default.findDOMNode(e.trackRef))),i=void 0;if(e.vertical)i=n;else{var o=e.centerMode&&2*parseInt(e.centerPadding);"string"==typeof e.centerPadding&&"%"===e.centerPadding.slice(-1)&&(o*=n/100),i=Math.ceil((n-o)/e.slidesToShow)}var a=v(l.default.findDOMNode(e.listRef).querySelector('[data-index="0"]')),u=a*e.slidesToShow,d=void 0===e.currentSlide?e.initialSlide:e.currentSlide;e.rtl&&void 0===e.currentSlide&&(d=t-1-e.initialSlide);var p=e.lazyLoadedList||[],f=c({currentSlide:d,lazyLoadedList:p},e);p.concat(f);var y={slideCount:t,slideWidth:i,listWidth:n,trackWidth:r,currentSlide:d,slideHeight:a,listHeight:u,lazyLoadedList:p};return null===e.autoplaying&&e.autoplay&&(y.autoplaying="playing"),y},t.slideHandler=function(e){var t=e.waitForAnimate,n=e.animating,r=e.fade,o=e.infinite,s=e.index,a=e.slideCount,l=e.lazyLoadedList,u=e.lazyLoad,d=(e.onLazyLoad,e.asNavFor,e.currentSlide),p=(e.speed,e.centerMode),f=e.slidesToScroll,h=e.slidesToShow,v=e.useCSS;if(t&&n)return{};var y=s,m=void 0,w=void 0,S=void 0,b={},k={};if(r){if(!o&&(s<0||s>=a))return{};s<0?y=s+a:s>=a&&(y=s-a),u&&l.indexOf(y)<0&&l.push(y),b={animating:!0,currentSlide:y,lazyLoadedList:l},k={animating:!1}}else m=y,y<0?(m=y+a,o?a%f!==0&&(m=a-a%f):m=0):!g(e)&&y>d?y=m=d:p&&y>=a?(y=o?a:a-1,m=o?0:a-1):y>=a&&(m=y-a,o?a%f!==0&&(m=0):m=a-h),w=T(i({},e,{slideIndex:y})),S=T(i({},e,{slideIndex:m})),o||(w===S&&(y=m),w=S),u&&l.concat(c(i({},e,{currentSlide:y}))),v?(b={animating:!0,currentSlide:m,trackStyle:E(i({},e,{left:w})),lazyLoadedList:l},k={animating:!1,currentSlide:m,trackStyle:_(i({},e,{left:S})),swipeLeft:null}):b={currentSlide:m,trackStyle:_(i({},e,{left:S})),lazyLoadedList:l};return{state:b,nextState:k}},t.changeSlide=function(e,t){var n,r,o,s,a,l=e.slidesToScroll,c=e.slidesToShow,u=(e.centerMode,e.rtl,e.slideCount),d=e.currentSlide,p=e.lazyLoad,f=e.infinite;if(s=u%l!==0,n=s?0:(u-d)%l,"previous"===t.message)o=0===n?l:c-n,a=d-o,p&&!f&&(r=d-o,a=r===-1?u-1:r);else if("next"===t.message)o=0===n?l:n,a=d+o,p&&!f&&(a=(d+l)%u+n);else if("dots"===t.message){if(a=t.index*t.slidesToScroll,a===t.currentSlide)return null}else if("children"===t.message){if(a=t.index,a===t.currentSlide)return null;if(f){var h=M(i({},e,{targetSlide:a}));a>t.currentSlide&&"left"===h?a-=u:a<t.currentSlide&&"right"===h&&(a+=u)}}else if("index"===t.message&&(a=Number(t.index),a===t.currentSlide))return null;return a},t.keyHandler=function(e,t,n){return e.target.tagName.match("TEXTAREA|INPUT|SELECT")||!t?"":37===e.keyCode?n?"next":"previous":39===e.keyCode?n?"previous":"next":""},t.swipeStart=function(e,t,n){return"IMG"===e.target.tagName&&e.preventDefault(),!t||!n&&e.type.indexOf("mouse")!==-1?"":{dragging:!0,touchObject:{startX:e.touches?e.touches[0].pageX:e.clientX,startY:e.touches?e.touches[0].pageY:e.clientY,curX:e.touches?e.touches[0].pageX:e.clientX,curY:e.touches?e.touches[0].pageY:e.clientY}}},t.swipeMove=function(e,t){var n=t.scrolling,r=t.animating,o=t.vertical,s=t.swipeToSlide,a=t.verticalSwiping,l=t.rtl,c=t.currentSlide,u=t.edgeFriction,d=t.edgeDragged,p=t.onEdge,f=t.swiped,h=t.swiping,v=t.slideCount,m=t.slidesToScroll,w=t.infinite,S=t.touchObject,b=t.swipeEvent,E=t.listHeight,k=t.listWidth;if(!n){if(r)return e.preventDefault();o&&s&&a&&e.preventDefault();var x=void 0,O={},M=T(t);S.curX=e.touches?e.touches[0].pageX:e.clientX,S.curY=e.touches?e.touches[0].pageY:e.clientY,S.swipeLength=Math.round(Math.sqrt(Math.pow(S.curX-S.startX,2)));var C=Math.round(Math.sqrt(Math.pow(S.curY-S.startY,2)));if(!a&&!h&&C>10)return{scrolling:!0};a&&(S.swipeLength=C);var L=(l?-1:1)*(S.curX>S.startX?1:-1);a&&(L=S.curY>S.startY?1:-1);var N=Math.ceil(v/m),D=y(t.touchObject,a),R=S.swipeLength;return w||(0===c&&"right"===D||c+1>=N&&"left"===D||!g(t)&&"left"===D)&&(R=S.swipeLength*u,d===!1&&p&&(p(D),O.edgeDragged=!0)),!f&&b&&(b(D),O.swiped=!0),x=o?M+R*(E/k)*L:l?M-R*L:M+R*L,a&&(x=M+R*L),O=i({},O,{touchObject:S,swipeLeft:x,trackStyle:_(i({},t,{left:x}))}),Math.abs(S.curX-S.startX)<.8*Math.abs(S.curY-S.startY)?O:(S.swipeLength>10&&(O.swiping=!0,e.preventDefault()),O)}},t.swipeEnd=function(e,t){var n=t.dragging,r=t.swipe,o=t.touchObject,s=t.listWidth,a=t.touchThreshold,l=t.verticalSwiping,c=t.listHeight,u=t.currentSlide,d=t.swipeToSlide,p=t.scrolling,f=t.onSwipe;if(!n)return r&&e.preventDefault(),{};var h=l?c/a:s/a,v=y(o,l),g={dragging:!1,edgeDragged:!1,scrolling:!1,swiping:!1,swiped:!1,swipeLeft:null,touchObject:{}};if(p)return g;if(!o.swipeLength)return g;if(o.swipeLength>h){e.preventDefault(),f&&f(v);var m=void 0,b=void 0;switch(v){case"left":case"up":b=u+S(t),m=d?w(t,b):b,g.currentDirection=0;break;case"right":case"down":b=u-S(t),m=d?w(t,b):b,g.currentDirection=1;break;default:m=u}g.triggerSlideHandler=m}else{var _=T(t);g.trackStyle=E(i({},t,{left:_}))}return g},t.getNavigableIndexes=function(e){for(var t=e.infinite?2*e.slideCount:e.slideCount,n=e.infinite?e.slidesToShow*-1:0,r=e.infinite?e.slidesToShow*-1:0,i=[];n<t;)i.push(n),n=r+e.slidesToScroll,r+=Math.min(e.slidesToScroll,e.slidesToShow);return i}),w=t.checkNavigable=function(e,t){var n=m(e),r=0;if(t>n[n.length-1])t=n[n.length-1];else for(var i in n){if(t<n[i]){t=r;break}r=n[i]}return t},S=t.getSlideCount=function(e){var t=e.centerMode?e.slideWidth*Math.floor(e.slidesToShow/2):0;if(e.swipeToSlide){var n=void 0,r=l.default.findDOMNode(e.listRef),i=r.querySelectorAll(".slick-slide");if(Array.from(i).every(function(r){if(e.vertical){if(r.offsetTop+v(r)/2>e.swipeLeft*-1)return n=r,!1}else if(r.offsetLeft-t+h(r)/2>e.swipeLeft*-1)return n=r,!1;return!0}),!n)return 0;var o=e.rtl===!0?e.slideCount-e.currentSlide:e.currentSlide,s=Math.abs(n.dataset.index-o)||1;return s}return e.slidesToScroll},b=t.checkSpecKeys=function(e,t){return t.reduce(function(t,n){return t&&e.hasOwnProperty(n)},!0)?null:console.error("Keys Missing:",e)},_=t.getTrackCSS=function(e){b(e,["left","variableWidth","slideCount","slidesToShow","slideWidth"]);var t=void 0,n=void 0,r=e.slideCount+2*e.slidesToShow;e.vertical?n=r*e.slideHeight:t=O(e)*e.slideWidth;var o={opacity:1,transition:"",WebkitTransition:""};if(e.useTransform){var s=e.vertical?"translate3d(0px, "+e.left+"px, 0px)":"translate3d("+e.left+"px, 0px, 0px)",a=e.vertical?"translate3d(0px, "+e.left+"px, 0px)":"translate3d("+e.left+"px, 0px, 0px)",l=e.vertical?"translateY("+e.left+"px)":"translateX("+e.left+"px)";o=i({},o,{WebkitTransform:s,transform:a,msTransform:l})}else e.vertical?o.top=e.left:o.left=e.left;return e.fade&&(o={opacity:1}),t&&(o.width=t),n&&(o.height=n),window&&!window.addEventListener&&window.attachEvent&&(e.vertical?o.marginTop=e.left+"px":o.marginLeft=e.left+"px"),o},E=t.getTrackAnimateCSS=function(e){b(e,["left","variableWidth","slideCount","slidesToShow","slideWidth","speed","cssEase"]);var t=_(e);return e.useTransform?(t.WebkitTransition="-webkit-transform "+e.speed+"ms "+e.cssEase,t.transition="transform "+e.speed+"ms "+e.cssEase):e.vertical?t.transition="top "+e.speed+"ms "+e.cssEase:t.transition="left "+e.speed+"ms "+e.cssEase,t},T=t.getTrackLeft=function(e){if(e.unslick)return 0;b(e,["slideIndex","trackRef","infinite","centerMode","slideCount","slidesToShow","slidesToScroll","slideWidth","listWidth","variableWidth","slideHeight"]);var t,n,r=e.slideIndex,i=e.trackRef,o=e.infinite,s=e.centerMode,a=e.slideCount,c=e.slidesToShow,u=e.slidesToScroll,d=e.slideWidth,p=e.listWidth,f=e.variableWidth,h=e.slideHeight,v=e.fade,y=e.vertical,g=0,m=0;if(v||1===e.slideCount)return 0;var w=0;if(o?(w=-k(e),a%u!==0&&r+u>a&&(w=-(r>a?c-(r-a):a%u)),s&&(w+=parseInt(c/2))):(a%u!==0&&r+u>a&&(w=c-a%u),s&&(w=parseInt(c/2))),g=w*d,m=w*h,t=y?r*h*-1+m:r*d*-1+g,f===!0){var S;l.default.findDOMNode(i).children[a-1];if(S=r+k(e),n=l.default.findDOMNode(i).childNodes[S],t=n?n.offsetLeft*-1:0,s===!0){S=o?r+k(e):r,n=l.default.findDOMNode(i).children[S],t=0;for(var _=0;_<S;_++)t-=l.default.findDOMNode(i).children[_].offsetWidth;t-=parseInt(e.centerPadding),t+=(p-n.offsetWidth)/2}}return t},k=t.getPreClones=function(e){return e.unslick||!e.infinite?0:e.variableWidth?e.slideCount:e.slidesToShow+(e.centerMode?1:0)},x=t.getPostClones=function(e){return e.unslick||!e.infinite?0:e.slideCount},O=t.getTotalSlides=function(e){return 1===e.slideCount?1:k(e)+e.slideCount+x(e)},M=t.siblingDirection=function(e){return e.targetSlide>e.currentSlide?e.targetSlide>e.currentSlide+C(e)?"left":"right":e.targetSlide<e.currentSlide-L(e)?"right":"left"},C=t.slidesOnRight=function(e){var t=e.slidesToShow,n=e.centerMode,r=e.rtl,i=e.centerPadding;if(n){var o=(t-1)/2+1;return parseInt(i)>0&&(o+=1),r&&t%2===0&&(o+=1),o}return r?0:t-1},L=t.slidesOnLeft=function(e){var t=e.slidesToShow,n=e.centerMode,r=e.rtl,i=e.centerPadding;if(n){var o=(t-1)/2+1;return parseInt(i)>0&&(o+=1),r||t%2!==0||(o+=1),o}return r?t-1:0}},function(e,n){e.exports=t},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}t.__esModule=!0,t.Track=void 0;var a=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},l=n(2),c=r(l),u=n(13),d=r(u),p=n(14),f=function(e){var t,n,r,i,o;o=e.rtl?e.slideCount-1-e.index:e.index,r=o<0||o>=e.slideCount,e.centerMode?(i=Math.floor(e.slidesToShow/2),n=(o-e.currentSlide)%e.slideCount===0,o>e.currentSlide-i-1&&o<=e.currentSlide+i&&(t=!0)):t=e.currentSlide<=o&&o<e.currentSlide+e.slidesToShow;var s=o===e.currentSlide;return(0,d.default)({"slick-slide":!0,"slick-active":t,"slick-center":n,"slick-cloned":r,"slick-current":s})},h=function(e){var t={};return void 0!==e.variableWidth&&e.variableWidth!==!1||(t.width=e.slideWidth),e.fade&&(t.position="relative",e.vertical?t.top=-e.index*e.slideHeight:t.left=-e.index*e.slideWidth,t.opacity=e.currentSlide===e.index?1:0,t.transition="opacity "+e.speed+"ms "+e.cssEase+", visibility "+e.speed+"ms "+e.cssEase,t.WebkitTransition="opacity "+e.speed+"ms "+e.cssEase+", visibility "+e.speed+"ms "+e.cssEase),t},v=function(e,t){return e.key||t},y=function(e){var t,n=[],r=[],i=[],o=c.default.Children.count(e.children),s=(0,p.lazyStartIndex)(e),l=(0,p.lazyEndIndex)(e);return c.default.Children.forEach(e.children,function(u,y){var g=void 0,m={message:"children",index:y,slidesToScroll:e.slidesToScroll,currentSlide:e.currentSlide};g=!e.lazyLoad||e.lazyLoad&&e.lazyLoadedList.indexOf(y)>=0?u:c.default.createElement("div",null);var w=h(a({},e,{index:y})),S=g.props.className||"";if(n.push(c.default.cloneElement(g,{key:"original"+v(g,y),"data-index":y,className:(0,d.default)(f(a({},e,{index:y})),S),tabIndex:"-1",style:a({outline:"none"},g.props.style||{},w),onClick:function(t){g.props&&g.props.onClick&&g.props.onClick(t),e.focusOnSelect&&e.focusOnSelect(m)}})),e.infinite&&e.fade===!1){var b=o-y;b<=(0,p.getPreClones)(e)&&o!==e.slidesToShow&&(t=-b,t>=s&&(g=u),r.push(c.default.cloneElement(g,{key:"precloned"+v(g,t),"data-index":t,tabIndex:"-1",className:(0,d.default)(f(a({},e,{index:t})),S),style:a({},g.props.style||{},w),onClick:function(t){g.props&&g.props.onClick&&g.props.onClick(t),e.focusOnSelect&&e.focusOnSelect(m)}}))),o!==e.slidesToShow&&(t=o+y,t<l&&(g=u),i.push(c.default.cloneElement(g,{key:"postcloned"+v(g,t),"data-index":t,tabIndex:"-1",className:(0,d.default)(f(a({},e,{index:t})),S),style:a({},g.props.style||{},w),onClick:function(t){g.props&&g.props.onClick&&g.props.onClick(t),e.focusOnSelect&&e.focusOnSelect(m)}})))}}),e.rtl?r.concat(n,i).reverse():r.concat(n,i)};t.Track=function(e){function t(){return i(this,t),o(this,e.apply(this,arguments))}return s(t,e),t.prototype.render=function(){var e=y(this.props),t=this.props,n=t.onMouseEnter,r=t.onMouseOver,i=t.onMouseLeave,o={onMouseEnter:n,onMouseOver:r,onMouseLeave:i};return c.default.createElement("div",a({className:"slick-track",style:this.props.trackStyle},o),e)},t}(c.default.Component)},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}t.__esModule=!0,t.Dots=void 0;var a=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},l=n(2),c=r(l),u=n(13),d=r(u),p=function(e){var t;return t=e.infinite?Math.ceil(e.slideCount/e.slidesToScroll):Math.ceil((e.slideCount-e.slidesToShow)/e.slidesToScroll)+1};t.Dots=function(e){function t(){return i(this,t),o(this,e.apply(this,arguments))}return s(t,e),t.prototype.clickHandler=function(e,t){t.preventDefault(),this.props.clickHandler(e)},t.prototype.render=function(){var e=this,t=p({slideCount:this.props.slideCount,slidesToScroll:this.props.slidesToScroll,slidesToShow:this.props.slidesToShow,infinite:this.props.infinite}),n=this.props,r=n.onMouseEnter,i=n.onMouseOver,o=n.onMouseLeave,s={onMouseEnter:r,onMouseOver:i,onMouseLeave:o},l=Array.apply(null,Array(t+1).join("0").split("")).map(function(t,n){var r=n*e.props.slidesToScroll,i=n*e.props.slidesToScroll+(e.props.slidesToScroll-1),o=(0,d.default)({"slick-active":e.props.currentSlide>=r&&e.props.currentSlide<=i}),s={message:"dots",index:n,slidesToScroll:e.props.slidesToScroll,currentSlide:e.props.currentSlide},a=e.clickHandler.bind(e,s);return c.default.createElement("li",{key:n,className:o},c.default.cloneElement(e.props.customPaging(n),{onClick:a}))});return c.default.cloneElement(this.props.appendDots(l),a({className:this.props.dotsClass},s))},t}(c.default.Component)},function(e,t,n){"use strict";function r(e){return e&&e.__esModule?e:{default:e}}function i(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}function o(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function s(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}t.__esModule=!0,t.NextArrow=t.PrevArrow=void 0;var a=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},l=n(2),c=r(l),u=n(13),d=r(u),p=n(14);t.PrevArrow=function(e){function t(){return i(this,t),o(this,e.apply(this,arguments))}return s(t,e),t.prototype.clickHandler=function(e,t){t&&t.preventDefault(),this.props.clickHandler(e,t)},t.prototype.render=function(){var e={"slick-arrow":!0,"slick-prev":!0},t=this.clickHandler.bind(this,{message:"previous"});!this.props.infinite&&(0===this.props.currentSlide||this.props.slideCount<=this.props.slidesToShow)&&(e["slick-disabled"]=!0,t=null);var n={key:"0","data-role":"none",className:(0,d.default)(e),style:{display:"block"},onClick:t},r={currentSlide:this.props.currentSlide,slideCount:this.props.slideCount},i=void 0;return i=this.props.prevArrow?c.default.cloneElement(this.props.prevArrow,a({},n,r)):c.default.createElement("button",a({key:"0",type:"button"},n)," Previous")},t}(c.default.Component),t.NextArrow=function(e){function t(){return i(this,t),o(this,e.apply(this,arguments))}return s(t,e),t.prototype.clickHandler=function(e,t){t&&t.preventDefault(),this.props.clickHandler(e,t)},t.prototype.render=function(){var e={"slick-arrow":!0,"slick-next":!0},t=this.clickHandler.bind(this,{message:"next"});(0,p.canGoNext)(this.props)||(e["slick-disabled"]=!0,t=null);var n={key:"1","data-role":"none",className:(0,d.default)(e),style:{display:"block"},onClick:t},r={currentSlide:this.props.currentSlide,slideCount:this.props.slideCount},i=void 0;return i=this.props.nextArrow?c.default.cloneElement(this.props.nextArrow,a({},n,r)):c.default.createElement("button",a({key:"1",type:"button"},n)," Next")},t}(c.default.Component)},function(e,t,n){(function(t){!function(t,n){e.exports=n()}(this,function(){"use strict";function e(e){return parseFloat(e)||0}function n(t){for(var n=[],r=arguments.length-1;r-- >0;)n[r]=arguments[r+1];return n.reduce(function(n,r){var i=t["border-"+r+"-width"];return n+e(i)},0)}function r(t){for(var n=["top","right","bottom","left"],r={},i=0,o=n;i<o.length;i+=1){var s=o[i],a=t["padding-"+s];r[s]=e(a)}return r}function i(e){var t=e.getBBox();return c(0,0,t.width,t.height)}function o(t){var i=t.clientWidth,o=t.clientHeight;if(!i&&!o)return _;var a=b(t).getComputedStyle(t),l=r(a),u=l.left+l.right,d=l.top+l.bottom,p=e(a.width),f=e(a.height);if("border-box"===a.boxSizing&&(Math.round(p+u)!==i&&(p-=n(a,"left","right")+u),Math.round(f+d)!==o&&(f-=n(a,"top","bottom")+d)),!s(t)){var h=Math.round(p+u)-i,v=Math.round(f+d)-o;1!==Math.abs(h)&&(p-=h),1!==Math.abs(v)&&(f-=v)}return c(l.left,l.top,p,f)}function s(e){return e===b(e).document.documentElement}function a(e){return d?E(e)?i(e):o(e):_}function l(e){var t=e.x,n=e.y,r=e.width,i=e.height,o="undefined"!=typeof DOMRectReadOnly?DOMRectReadOnly:Object,s=Object.create(o.prototype);return S(s,{x:t,y:n,width:r,height:i,top:n,right:t+r,bottom:i+n,left:t}),s}function c(e,t,n,r){return{x:e,y:t,width:n,height:r}}var u=function(){function e(e,t){var n=-1;return e.some(function(e,r){return e[0]===t&&(n=r,!0)}),n}return"undefined"!=typeof Map?Map:function(){function t(){this.__entries__=[]}var n={size:{configurable:!0}};return n.size.get=function(){return this.__entries__.length},t.prototype.get=function(t){var n=e(this.__entries__,t),r=this.__entries__[n];return r&&r[1]},t.prototype.set=function(t,n){var r=e(this.__entries__,t);~r?this.__entries__[r][1]=n:this.__entries__.push([t,n])},t.prototype.delete=function(t){var n=this.__entries__,r=e(n,t);~r&&n.splice(r,1)},t.prototype.has=function(t){return!!~e(this.__entries__,t)},t.prototype.clear=function(){this.__entries__.splice(0)},t.prototype.forEach=function(e,t){var n=this;void 0===t&&(t=null);for(var r=0,i=n.__entries__;r<i.length;r+=1){var o=i[r];e.call(t,o[1],o[0])}},Object.defineProperties(t.prototype,n),t}()}(),d="undefined"!=typeof window&&"undefined"!=typeof document&&window.document===document,p=function(){return"undefined"!=typeof t&&t.Math===Math?t:"undefined"!=typeof self&&self.Math===Math?self:"undefined"!=typeof window&&window.Math===Math?window:Function("return this")()}(),f=function(){return"function"==typeof requestAnimationFrame?requestAnimationFrame.bind(p):function(e){return setTimeout(function(){return e(Date.now())},1e3/60)}}(),h=2,v=function(e,t){function n(){o&&(o=!1,e()),s&&i()}function r(){f(n)}function i(){var e=Date.now();if(o){if(e-a<h)return;s=!0}else o=!0,s=!1,setTimeout(r,t);a=e}var o=!1,s=!1,a=0;return i},y=20,g=["top","right","bottom","left","width","height","size","weight"],m="undefined"!=typeof MutationObserver,w=function(){this.connected_=!1,this.mutationEventsAdded_=!1,this.mutationsObserver_=null,this.observers_=[],this.onTransitionEnd_=this.onTransitionEnd_.bind(this),this.refresh=v(this.refresh.bind(this),y)};w.prototype.addObserver=function(e){~this.observers_.indexOf(e)||this.observers_.push(e),this.connected_||this.connect_()},w.prototype.removeObserver=function(e){var t=this.observers_,n=t.indexOf(e);~n&&t.splice(n,1),!t.length&&this.connected_&&this.disconnect_()},w.prototype.refresh=function(){var e=this.updateObservers_();e&&this.refresh()},w.prototype.updateObservers_=function(){var e=this.observers_.filter(function(e){return e.gatherActive(),e.hasActive()});return e.forEach(function(e){return e.broadcastActive()}),e.length>0},w.prototype.connect_=function(){d&&!this.connected_&&(document.addEventListener("transitionend",this.onTransitionEnd_),window.addEventListener("resize",this.refresh),m?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(document.addEventListener("DOMSubtreeModified",this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},w.prototype.disconnect_=function(){d&&this.connected_&&(document.removeEventListener("transitionend",this.onTransitionEnd_),window.removeEventListener("resize",this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&document.removeEventListener("DOMSubtreeModified",this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},w.prototype.onTransitionEnd_=function(e){var t=e.propertyName;void 0===t&&(t="");var n=g.some(function(e){return!!~t.indexOf(e)});n&&this.refresh()},w.getInstance=function(){return this.instance_||(this.instance_=new w),this.instance_},w.instance_=null;var S=function(e,t){for(var n=0,r=Object.keys(t);n<r.length;n+=1){var i=r[n];Object.defineProperty(e,i,{value:t[i],enumerable:!1,writable:!1,configurable:!0})}return e},b=function(e){var t=e&&e.ownerDocument&&e.ownerDocument.defaultView;return t||p},_=c(0,0,0,0),E=function(){return"undefined"!=typeof SVGGraphicsElement?function(e){return e instanceof b(e).SVGGraphicsElement}:function(e){return e instanceof b(e).SVGElement&&"function"==typeof e.getBBox}}(),T=function(e){this.broadcastWidth=0,this.broadcastHeight=0,this.contentRect_=c(0,0,0,0),this.target=e};T.prototype.isActive=function(){var e=a(this.target);return this.contentRect_=e,e.width!==this.broadcastWidth||e.height!==this.broadcastHeight},T.prototype.broadcastRect=function(){var e=this.contentRect_;return this.broadcastWidth=e.width,this.broadcastHeight=e.height,e};var k=function(e,t){var n=l(t);S(this,{target:e,contentRect:n})},x=function(e,t,n){if(this.activeObservations_=[],this.observations_=new u,"function"!=typeof e)throw new TypeError("The callback provided as parameter 1 is not a function.");this.callback_=e,this.controller_=t,this.callbackCtx_=n};x.prototype.observe=function(e){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if("undefined"!=typeof Element&&Element instanceof Object){if(!(e instanceof b(e).Element))throw new TypeError('parameter 1 is not of type "Element".');var t=this.observations_;t.has(e)||(t.set(e,new T(e)),this.controller_.addObserver(this),this.controller_.refresh())}},x.prototype.unobserve=function(e){if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");if("undefined"!=typeof Element&&Element instanceof Object){if(!(e instanceof b(e).Element))throw new TypeError('parameter 1 is not of type "Element".');var t=this.observations_;t.has(e)&&(t.delete(e),t.size||this.controller_.removeObserver(this))}},x.prototype.disconnect=function(){this.clearActive(),this.observations_.clear(),this.controller_.removeObserver(this)},x.prototype.gatherActive=function(){var e=this;this.clearActive(),this.observations_.forEach(function(t){t.isActive()&&e.activeObservations_.push(t)})},x.prototype.broadcastActive=function(){if(this.hasActive()){var e=this.callbackCtx_,t=this.activeObservations_.map(function(e){return new k(e.target,e.broadcastRect())});this.callback_.call(e,t,e),this.clearActive()}},x.prototype.clearActive=function(){this.activeObservations_.splice(0)},x.prototype.hasActive=function(){return this.activeObservations_.length>0};var O="undefined"!=typeof WeakMap?new WeakMap:new u,M=function(e){if(!(this instanceof M))throw new TypeError("Cannot call a class as a function.");if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");var t=w.getInstance(),n=new x(e,t,this);O.set(this,n)};["observe","unobserve","disconnect"].forEach(function(e){M.prototype[e]=function(){return(t=O.get(this))[e].apply(t,arguments);var t}});var C=function(){return"undefined"!=typeof p.ResizeObserver?p.ResizeObserver:M}();return C})}).call(t,function(){return this}())},function(e,t,n){var r=n(21),i=function(e){var t=/[height|width]$/;return t.test(e)},o=function(e){var t="",n=Object.keys(e);return n.forEach(function(o,s){var a=e[o];o=r(o),i(o)&&"number"==typeof a&&(a+="px"),t+=a===!0?o:a===!1?"not "+o:"("+o+": "+a+")",s<n.length-1&&(t+=" and ")}),t},s=function(e){var t="";return"string"==typeof e?e:e instanceof Array?(e.forEach(function(n,r){t+=o(n),r<e.length-1&&(t+=", ")}),t):o(e)};e.exports=s},function(e,t){var n=function(e){return e.replace(/[A-Z]/g,function(e){return"-"+e.toLowerCase()}).toLowerCase()};e.exports=n},function(e,t){var n=!("undefined"==typeof window||!window.document||!window.document.createElement);e.exports=n},function(e,t,n){var r=n(24);e.exports=new r},function(e,t,n){function r(){if(!window.matchMedia)throw new Error("matchMedia not present, legacy browsers require a polyfill");this.queries={},this.browserIsIncapable=!window.matchMedia("only all").matches}var i=n(25),o=n(27),s=o.each,a=o.isFunction,l=o.isArray;r.prototype={constructor:r,register:function(e,t,n){var r=this.queries,o=n&&this.browserIsIncapable;return r[e]||(r[e]=new i(e,o)),a(t)&&(t={match:t}),l(t)||(t=[t]),s(t,function(t){a(t)&&(t={match:t}),r[e].addHandler(t)}),this},unregister:function(e,t){var n=this.queries[e];return n&&(t?n.removeHandler(t):(n.clear(),delete this.queries[e])),this}},e.exports=r},function(e,t,n){function r(e,t){this.query=e,this.isUnconditional=t,this.handlers=[],this.mql=window.matchMedia(e);var n=this;this.listener=function(e){n.mql=e.currentTarget||e,n.assess()},this.mql.addListener(this.listener)}var i=n(26),o=n(27).each;r.prototype={constuctor:r,addHandler:function(e){var t=new i(e);this.handlers.push(t),this.matches()&&t.on()},removeHandler:function(e){var t=this.handlers;o(t,function(n,r){if(n.equals(e))return n.destroy(),!t.splice(r,1)})},matches:function(){return this.mql.matches||this.isUnconditional},clear:function(){o(this.handlers,function(e){e.destroy()}),this.mql.removeListener(this.listener),this.handlers.length=0},assess:function(){var e=this.matches()?"on":"off";o(this.handlers,function(t){t[e]()})}},e.exports=r},function(e,t){function n(e){this.options=e,!e.deferSetup&&this.setup()}n.prototype={constructor:n,setup:function(){this.options.setup&&this.options.setup(),this.initialised=!0},on:function(){!this.initialised&&this.setup(),this.options.match&&this.options.match()},off:function(){this.options.unmatch&&this.options.unmatch()},destroy:function(){this.options.destroy?this.options.destroy():this.off()},equals:function(e){return this.options===e||this.options.match===e}},e.exports=n},function(e,t){function n(e,t){var n,r=0,i=e.length;for(r;r<i&&(n=t(e[r],r),n!==!1);r++);}function r(e){return"[object Array]"===Object.prototype.toString.apply(e)}function i(e){return"function"==typeof e}e.exports={isFunction:i,isArray:r,each:n}}])}); |
@@ -16,6 +16,2 @@ 'use strict'; | ||
var _helpers = require('./mixins/helpers'); | ||
var _helpers2 = _interopRequireDefault(_helpers); | ||
var _innerSliderUtils = require('./utils/innerSliderUtils'); | ||
@@ -22,0 +18,0 @@ |
@@ -12,61 +12,64 @@ 'use strict'; | ||
var defaultProps = { | ||
className: '', | ||
accessibility: true, | ||
adaptiveHeight: false, | ||
arrows: true, | ||
autoplay: false, | ||
autoplaySpeed: 3000, | ||
centerMode: false, | ||
centerPadding: '50px', | ||
cssEase: 'ease', | ||
customPaging: function customPaging(i) { | ||
return _react2.default.createElement( | ||
'button', | ||
null, | ||
i + 1 | ||
); | ||
}, | ||
dots: false, | ||
dotsClass: 'slick-dots', | ||
draggable: true, | ||
easing: 'linear', | ||
edgeFriction: 0.35, | ||
fade: false, | ||
focusOnSelect: false, | ||
infinite: true, | ||
initialSlide: 0, | ||
lazyLoad: false, | ||
pauseOnHover: true, | ||
responsive: null, | ||
rtl: false, | ||
slide: 'div', | ||
slidesToShow: 1, | ||
slidesToScroll: 1, | ||
speed: 500, | ||
swipe: true, | ||
swipeToSlide: false, | ||
touchMove: true, | ||
touchThreshold: 5, | ||
useCSS: true, | ||
variableWidth: false, | ||
vertical: false, | ||
waitForAnimate: true, | ||
afterChange: null, | ||
beforeChange: null, | ||
edgeEvent: null, | ||
// init: function hook that gets called right before InnerSlider mounts | ||
init: null, | ||
swipeEvent: null, | ||
// nextArrow, prevArrow should react componets | ||
nextArrow: null, | ||
prevArrow: null, | ||
appendDots: function appendDots(dots) { | ||
return _react2.default.createElement( | ||
'ul', | ||
{ style: { display: 'block' } }, | ||
dots | ||
); | ||
} | ||
accessibility: true, | ||
adaptiveHeight: false, | ||
afterChange: null, | ||
appendDots: function appendDots(dots) { | ||
return _react2.default.createElement( | ||
'ul', | ||
{ style: { display: 'block' } }, | ||
dots | ||
); | ||
}, | ||
arrows: true, | ||
autoplay: false, | ||
autoplaySpeed: 3000, | ||
beforeChange: null, | ||
centerMode: false, | ||
centerPadding: '50px', | ||
className: '', | ||
cssEase: 'ease', | ||
customPaging: function customPaging(i) { | ||
return _react2.default.createElement( | ||
'button', | ||
null, | ||
i + 1 | ||
); | ||
}, | ||
dots: false, | ||
dotsClass: 'slick-dots', | ||
draggable: true, | ||
easing: 'linear', | ||
edgeFriction: 0.35, | ||
fade: false, | ||
focusOnSelect: false, | ||
infinite: true, | ||
initialSlide: 0, | ||
lazyLoad: null, | ||
nextArrow: null, | ||
onEdge: null, | ||
onInit: null, | ||
onLazyLoadError: null, | ||
onReInit: null, | ||
pauseOnDotsHover: false, | ||
pauseOnFocus: false, | ||
pauseOnHover: true, | ||
prevArrow: null, | ||
responsive: null, | ||
rtl: false, | ||
slide: 'div', | ||
slidesToScroll: 1, | ||
slidesToShow: 1, | ||
speed: 500, | ||
swipe: true, | ||
swipeEvent: null, | ||
swipeToSlide: false, | ||
touchMove: true, | ||
touchThreshold: 5, | ||
useCSS: true, | ||
useTransform: true, | ||
variableWidth: false, | ||
vertical: false, | ||
waitForAnimate: true | ||
}; | ||
exports.default = defaultProps; |
@@ -6,2 +6,4 @@ 'use strict'; | ||
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; | ||
var _react = require('react'); | ||
@@ -64,2 +66,8 @@ | ||
// Credit: http://stackoverflow.com/a/13735425/1849458 | ||
var _props = this.props, | ||
onMouseEnter = _props.onMouseEnter, | ||
onMouseOver = _props.onMouseOver, | ||
onMouseLeave = _props.onMouseLeave; | ||
var mouseEvents = { onMouseEnter: onMouseEnter, onMouseOver: onMouseOver, onMouseLeave: onMouseLeave }; | ||
var dots = Array.apply(null, Array(dotCount + 1).join('0').split('')).map(function (x, i) { | ||
@@ -81,3 +89,2 @@ | ||
var onClick = _this2.clickHandler.bind(_this2, dotOptions); | ||
return _react2.default.createElement( | ||
@@ -90,3 +97,3 @@ 'li', | ||
return _react2.default.cloneElement(this.props.appendDots(dots), { className: this.props.dotsClass }); | ||
return _react2.default.cloneElement(this.props.appendDots(dots), _extends({ className: this.props.dotsClass }, mouseEvents)); | ||
}; | ||
@@ -93,0 +100,0 @@ |
"use strict"; | ||
exports.__esModule = true; | ||
var initialState = { | ||
animating: false, | ||
dragging: false, | ||
currentDirection: 0, | ||
currentLeft: null, | ||
currentSlide: 0, | ||
direction: 1, | ||
listWidth: null, | ||
listHeight: null, | ||
scrolling: false, | ||
// loadIndex: 0, | ||
slideCount: null, | ||
slideWidth: null, | ||
slideHeight: null, | ||
swiping: false, | ||
// sliding: false, | ||
// slideOffset: 0, | ||
swipeLeft: null, | ||
touchObject: { | ||
startX: 0, | ||
startY: 0, | ||
curX: 0, | ||
curY: 0 | ||
}, | ||
lazyLoadedList: [], | ||
// added for react | ||
initialized: false, | ||
edgeDragged: false, | ||
swiped: false, // used by swipeEvent. differentites between touch and swipe. | ||
trackStyle: {}, | ||
trackWidth: 0 | ||
// Removed | ||
// transformsEnabled: false, | ||
// $nextArrow: null, | ||
// $prevArrow: null, | ||
// $dots: null, | ||
// $list: null, | ||
// $slideTrack: null, | ||
// $slides: null, | ||
animating: false, | ||
autoplaying: null, | ||
currentDirection: 0, | ||
currentLeft: null, | ||
currentSlide: 0, | ||
direction: 1, | ||
dragging: false, | ||
edgeDragged: false, | ||
initialized: false, | ||
lazyLoadedList: [], | ||
listHeight: null, | ||
listWidth: null, | ||
scrolling: false, | ||
slideCount: null, | ||
slideHeight: null, | ||
slideWidth: null, | ||
swipeLeft: null, | ||
swiped: false, // used by swipeEvent. differentites between touch and swipe. | ||
swiping: false, | ||
touchObject: { startX: 0, startY: 0, curX: 0, curY: 0 }, | ||
trackStyle: {}, | ||
trackWidth: 0 | ||
}; | ||
module.exports = initialState; | ||
exports.default = initialState; |
@@ -12,10 +12,2 @@ 'use strict'; | ||
var _eventHandlers = require('./mixins/event-handlers'); | ||
var _eventHandlers2 = _interopRequireDefault(_eventHandlers); | ||
var _helpers = require('./mixins/helpers'); | ||
var _helpers2 = _interopRequireDefault(_helpers); | ||
var _initialState = require('./initial-state'); | ||
@@ -37,10 +29,4 @@ | ||
var _objectAssign = require('object-assign'); | ||
var _objectAssign2 = _interopRequireDefault(_objectAssign); | ||
var _innerSliderUtils = require('./utils/innerSliderUtils'); | ||
var _trackHelper = require('./mixins/trackHelper'); | ||
var _track = require('./track'); | ||
@@ -52,263 +38,540 @@ | ||
var _resizeObserverPolyfill = require('resize-observer-polyfill'); | ||
var _resizeObserverPolyfill2 = _interopRequireDefault(_resizeObserverPolyfill); | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
var InnerSlider = exports.InnerSlider = (0, _createReactClass2.default)({ | ||
displayName: 'InnerSlider', | ||
function _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; } | ||
mixins: [_helpers2.default, _eventHandlers2.default], | ||
list: null, // wraps the track | ||
track: null, // component that rolls out like a film | ||
listRefHandler: function listRefHandler(ref) { | ||
this.list = ref; | ||
}, | ||
trackRefHandler: function trackRefHandler(ref) { | ||
this.track = ref; | ||
}, | ||
getInitialState: function getInitialState() { | ||
return _extends({}, _initialState2.default, { | ||
currentSlide: this.props.initialSlide | ||
}); | ||
}, | ||
componentWillMount: function componentWillMount() { | ||
if (this.props.init) { | ||
this.props.init(); | ||
} | ||
if (this.props.lazyLoad) { | ||
var slidesToLoad = (0, _innerSliderUtils.getOnDemandLazySlides)((0, _objectAssign2.default)({}, this.props, this.state)); | ||
if (slidesToLoad.length > 0) { | ||
this.setState(function (prevState, props) { | ||
return { lazyLoadedList: prevState.lazyLoadedList.concat(slidesToLoad) }; | ||
function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } | ||
function _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError("this hasn't been initialised - super() hasn't been called"); } return call && (typeof call === "object" || typeof call === "function") ? call : self; } | ||
function _inherits(subClass, superClass) { if (typeof superClass !== "function" && superClass !== null) { throw new TypeError("Super expression must either be null or a function, not " + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; } | ||
var InnerSlider = exports.InnerSlider = function (_React$Component) { | ||
_inherits(InnerSlider, _React$Component); | ||
function InnerSlider(props) { | ||
_classCallCheck(this, InnerSlider); | ||
var _this = _possibleConstructorReturn(this, _React$Component.call(this, props)); | ||
_this.listRefHandler = function (ref) { | ||
return _this.list = ref; | ||
}; | ||
_this.trackRefHandler = function (ref) { | ||
return _this.track = ref; | ||
}; | ||
_this.adaptHeight = function () { | ||
if (_this.props.adaptiveHeight && _this.list) { | ||
var elem = _this.list.querySelector('[data-index="' + _this.state.currentSlide + '"]'); | ||
_this.list.style.height = (0, _innerSliderUtils.getHeight)(elem) + 'px'; | ||
} | ||
}; | ||
_this.componentWillMount = function () { | ||
_this.props.onInit && _this.props.onInit(); | ||
if (_this.props.lazyLoad) { | ||
var slidesToLoad = (0, _innerSliderUtils.getOnDemandLazySlides)(_extends({}, _this.props, _this.state)); | ||
if (slidesToLoad.length > 0) { | ||
_this.setState(function (prevState, props) { | ||
return { lazyLoadedList: prevState.lazyLoadedList.concat(slidesToLoad) }; | ||
}); | ||
if (_this.props.onLazyLoad) { | ||
_this.props.onLazyLoad(slidesToLoad); | ||
} | ||
} | ||
} | ||
}; | ||
_this.componentDidMount = function () { | ||
var spec = _extends({ listRef: _this.list, trackRef: _this.track }, _this.props); | ||
_this.updateState(spec, true, function () { | ||
_this.adaptHeight(); | ||
_this.props.autoplay && _this.autoPlay('update'); | ||
}); | ||
if (_this.props.lazyLoad === 'progressive') { | ||
_this.lazyLoadTimer = setInterval(_this.progressiveLazyLoad, 1000); | ||
} | ||
_this.ro = new _resizeObserverPolyfill2.default(function (entries) { | ||
return _this.onWindowResized(); | ||
}); | ||
_this.ro.observe(_this.list); | ||
Array.from(document.querySelectorAll('.slick-slide')).forEach(function (slide) { | ||
slide.onfocus = _this.props.pauseOnFocus ? _this.onSlideFocus : null; | ||
slide.onblur = _this.props.pauseOnFocus ? _this.onSlideBlur : null; | ||
}); | ||
// To support server-side rendering | ||
if (!window) { | ||
return; | ||
} | ||
if (window.addEventListener) { | ||
window.addEventListener('resize', _this.onWindowResized); | ||
} else { | ||
window.attachEvent('onresize', _this.onWindowResized); | ||
} | ||
}; | ||
_this.componentWillUnmount = function () { | ||
if (_this.animationEndCallback) { | ||
clearTimeout(_this.animationEndCallback); | ||
} | ||
if (_this.lazyLoadTimer) { | ||
clearInterval(_this.lazyLoadTimer); | ||
} | ||
if (_this.callbackTimers.length) { | ||
_this.callbackTimers.forEach(function (timer) { | ||
return clearTimeout(timer); | ||
}); | ||
if (this.props.onLazyLoad) { | ||
this.props.onLazyLoad(slidesToLoad); | ||
_this.callbackTimers = []; | ||
} | ||
if (window.addEventListener) { | ||
window.removeEventListener('resize', _this.onWindowResized); | ||
} else { | ||
window.detachEvent('onresize', _this.onWindowResized); | ||
} | ||
if (_this.autoplayTimer) { | ||
clearInterval(_this.autoplayTimer); | ||
} | ||
}; | ||
_this.componentWillReceiveProps = function (nextProps) { | ||
var spec = _extends({ listRef: _this.list, trackRef: _this.track }, nextProps, _this.state); | ||
_this.updateState(spec, false, function () { | ||
if (_this.state.currentSlide >= _react2.default.Children.count(nextProps.children)) { | ||
_this.changeSlide({ | ||
message: 'index', | ||
index: _react2.default.Children.count(nextProps.children) - nextProps.slidesToShow, | ||
currentSlide: _this.state.currentSlide | ||
}); | ||
} | ||
if (nextProps.autoplay) { | ||
_this.autoPlay('update'); | ||
} else { | ||
_this.pause('paused'); | ||
} | ||
}); | ||
}; | ||
_this.componentDidUpdate = function () { | ||
_this.checkImagesLoad(); | ||
_this.props.onReInit && _this.props.onReInit(); | ||
if (_this.props.lazyLoad) { | ||
var slidesToLoad = (0, _innerSliderUtils.getOnDemandLazySlides)(_extends({}, _this.props, _this.state)); | ||
if (slidesToLoad.length > 0) { | ||
_this.setState(function (prevState, props) { | ||
return { lazyLoadedList: prevState.lazyLoadedList.concat(slidesToLoad) }; | ||
}); | ||
if (_this.props.onLazyLoad) { | ||
_this.props.onLazyLoad(slidesToLoad); | ||
} | ||
} | ||
} | ||
} | ||
}, | ||
componentDidMount: function componentDidMount() { | ||
var _this = this; | ||
var spec = (0, _objectAssign2.default)({ listRef: this.list, trackRef: this.track }, this.props); | ||
var initState = (0, _innerSliderUtils.initializedState)(spec); | ||
(0, _objectAssign2.default)(spec, { slideIndex: initState.currentSlide }, initState); | ||
var targetLeft = (0, _trackHelper.getTrackLeft)(spec); | ||
(0, _objectAssign2.default)(spec, { left: targetLeft }); | ||
var trackStyle = (0, _trackHelper.getTrackCSS)(spec); | ||
initState['trackStyle'] = trackStyle; | ||
this.setState(initState, function () { | ||
// if (this.props.onLazyLoad) { | ||
// this.props.onLazyLoad([leftMostSlide]) | ||
// } | ||
_this.adaptHeight(); | ||
_this.autoPlay(); // it doesn't have to be here | ||
}); | ||
}; | ||
// To support server-side rendering | ||
if (!window) { | ||
return; | ||
} | ||
if (window.addEventListener) { | ||
window.addEventListener('resize', this.onWindowResized); | ||
} else { | ||
window.attachEvent('onresize', this.onWindowResized); | ||
} | ||
}, | ||
componentWillUnmount: function componentWillUnmount() { | ||
if (this.animationEndCallback) { | ||
clearTimeout(this.animationEndCallback); | ||
} | ||
if (window.addEventListener) { | ||
window.removeEventListener('resize', this.onWindowResized); | ||
} else { | ||
window.detachEvent('onresize', this.onWindowResized); | ||
} | ||
if (this.autoplayTimer) { | ||
clearInterval(this.autoplayTimer); | ||
} | ||
}, | ||
componentWillReceiveProps: function componentWillReceiveProps(nextProps) { | ||
var _this2 = this; | ||
_this.onWindowResized = function () { | ||
var spec = _extends({ listRef: _this.list, trackRef: _this.track }, _this.props, _this.state); | ||
_this.updateState(spec, true, function () { | ||
if (_this.props.autoplay) _this.autoPlay('update');else _this.pause('paused'); | ||
}); | ||
// animating state should be cleared while resizing, otherwise autoplay stops working | ||
_this.setState({ | ||
animating: false | ||
}); | ||
clearTimeout(_this.animationEndCallback); | ||
delete _this.animationEndCallback; | ||
}; | ||
var spec = (0, _objectAssign2.default)({ listRef: this.list, trackRef: this.track }, nextProps, this.state); | ||
var updatedState = (0, _innerSliderUtils.initializedState)(spec); | ||
(0, _objectAssign2.default)(spec, { slideIndex: updatedState.currentSlide }, updatedState); | ||
var targetLeft = (0, _trackHelper.getTrackLeft)(spec); | ||
(0, _objectAssign2.default)(spec, { left: targetLeft }); | ||
var trackStyle = (0, _trackHelper.getTrackCSS)(spec); | ||
// not setting trackStyle in other cases because no prop change can trigger slideChange | ||
if (_react2.default.Children.count(this.props.children) !== _react2.default.Children.count(nextProps.children)) { | ||
updatedState['trackStyle'] = trackStyle; | ||
} | ||
this.setState(updatedState, function () { | ||
if (_this2.state.currentSlide >= _react2.default.Children.count(nextProps.children)) { | ||
_this2.changeSlide({ | ||
message: 'index', | ||
index: _react2.default.Children.count(nextProps.children) - nextProps.slidesToShow, | ||
currentSlide: _this2.state.currentSlide | ||
}); | ||
_this.updateState = function (spec, setTrackStyle, callback) { | ||
var updatedState = (0, _innerSliderUtils.initializedState)(spec); | ||
spec = _extends({}, spec, updatedState, { slideIndex: updatedState.currentSlide }); | ||
var targetLeft = (0, _innerSliderUtils.getTrackLeft)(spec); | ||
spec = _extends({}, spec, { left: targetLeft }); | ||
var trackStyle = (0, _innerSliderUtils.getTrackCSS)(spec); | ||
if (setTrackStyle || _react2.default.Children.count(_this.props.children) !== _react2.default.Children.count(spec.children)) { | ||
updatedState['trackStyle'] = trackStyle; | ||
} | ||
// the following doesn't have to be this way | ||
if (!nextProps.autoplay) _this2.pause();else _this2.autoPlay(nextProps.autoplay); | ||
}); | ||
}, | ||
componentDidUpdate: function componentDidUpdate() { | ||
var _this3 = this; | ||
_this.setState(updatedState, callback); | ||
}; | ||
var images = document.querySelectorAll('.slick-slide img'); | ||
images.forEach(function (image) { | ||
if (!image.onload) { | ||
image.onload = function () { | ||
return setTimeout(function () { | ||
return _this3.update(_this3.props); | ||
}, _this3.props.speed); | ||
_this.checkImagesLoad = function () { | ||
var images = document.querySelectorAll('.slick-slide img'); | ||
var imagesCount = images.length, | ||
loadedCount = 0; | ||
Array.from(images).forEach(function (image) { | ||
var handler = function handler() { | ||
return ++loadedCount && loadedCount >= imagesCount && _this.onWindowResized(); | ||
}; | ||
if (!image.onclick) { | ||
image.onclick = function () { | ||
return image.parentNode.focus(); | ||
}; | ||
} else { | ||
var prevClickHandler = image.onclick; | ||
image.onclick = function () { | ||
prevClickHandler(); | ||
image.parentNode.focus(); | ||
}; | ||
} | ||
if (!image.onload) { | ||
if (_this.props.lazyLoad) { | ||
image.onload = function () { | ||
_this.adaptHeight(); | ||
_this.callbackTimers.push(setTimeout(_this.onWindowResized, _this.props.speed)); | ||
}; | ||
} else { | ||
image.onload = handler; | ||
image.onerror = function () { | ||
handler(); | ||
_this.props.onLazyLoadError && _this.props.onLazyLoadError(); | ||
}; | ||
} | ||
} | ||
}); | ||
}; | ||
_this.progressiveLazyLoad = function () { | ||
var slidesToLoad = []; | ||
var spec = _extends({}, _this.props, _this.state); | ||
for (var index = _this.state.currentSlide; index < _this.state.slideCount + (0, _innerSliderUtils.getPostClones)(spec); index++) { | ||
if (_this.state.lazyLoadedList.indexOf(index) < 0) { | ||
slidesToLoad.push(index); | ||
break; | ||
} | ||
} | ||
}); | ||
if (this.props.reInit) { | ||
this.props.reInit(); | ||
} | ||
if (this.props.lazyLoad) { | ||
var slidesToLoad = (0, _innerSliderUtils.getOnDemandLazySlides)((0, _objectAssign2.default)({}, this.props, this.state)); | ||
for (var _index = _this.state.currentSlide - 1; _index >= -(0, _innerSliderUtils.getPreClones)(spec); _index--) { | ||
if (_this.state.lazyLoadedList.indexOf(_index) < 0) { | ||
slidesToLoad.push(_index); | ||
break; | ||
} | ||
} | ||
if (slidesToLoad.length > 0) { | ||
this.setState(function (prevState, props) { | ||
return { lazyLoadedList: prevState.lazyLoadedList.concat(slidesToLoad) }; | ||
_this.setState(function (state) { | ||
return { lazyLoadedList: state.lazyLoadedList.concat(slidesToLoad) }; | ||
}); | ||
if (this.props.onLazyLoad) { | ||
this.props.onLazyLoad(slidesToLoad); | ||
if (_this.props.onLazyLoad) { | ||
_this.props.onLazyLoad(slidesToLoad); | ||
} | ||
} else { | ||
if (_this.lazyLoadTimer) { | ||
clearInterval(_this.lazyLoadTimer); | ||
delete _this.lazyLoadTimer; | ||
} | ||
} | ||
} | ||
// if (this.props.onLazyLoad) { | ||
// this.props.onLazyLoad([leftMostSlide]) | ||
// } | ||
this.adaptHeight(); | ||
}, | ||
onWindowResized: function onWindowResized() { | ||
this.update(this.props); | ||
// animating state should be cleared while resizing, otherwise autoplay stops working | ||
this.setState({ | ||
animating: false | ||
}); | ||
clearTimeout(this.animationEndCallback); | ||
delete this.animationEndCallback; | ||
}, | ||
slickPrev: function slickPrev() { | ||
var _this4 = this; | ||
}; | ||
// this and fellow methods are wrapped in setTimeout | ||
// to make sure initialize setState has happened before | ||
// any of such methods are called | ||
setTimeout(function () { | ||
return _this4.changeSlide({ message: 'previous' }); | ||
}, 0); | ||
}, | ||
slickNext: function slickNext() { | ||
var _this5 = this; | ||
_this.slideHandler = function (index) { | ||
var _this$props = _this.props, | ||
asNavFor = _this$props.asNavFor, | ||
currentSlide = _this$props.currentSlide, | ||
beforeChange = _this$props.beforeChange, | ||
onLazyLoad = _this$props.onLazyLoad, | ||
speed = _this$props.speed, | ||
afterChange = _this$props.afterChange; | ||
setTimeout(function () { | ||
return _this5.changeSlide({ message: 'next' }); | ||
}, 0); | ||
}, | ||
slickGoTo: function slickGoTo(slide) { | ||
var _this6 = this; | ||
var _slideHandler = (0, _innerSliderUtils.slideHandler)(_extends({ index: index }, _this.props, _this.state, { trackRef: _this.track })), | ||
state = _slideHandler.state, | ||
nextState = _slideHandler.nextState; | ||
slide = Number(slide); | ||
!isNaN(slide) && setTimeout(function () { | ||
return _this6.changeSlide({ | ||
message: 'index', | ||
index: slide, | ||
currentSlide: _this6.state.currentSlide | ||
if (!state) return; | ||
beforeChange && beforeChange(currentSlide, state.currentSlide); | ||
var slidesToLoad = state.lazyLoadedList.filter(function (value) { | ||
return _this.state.lazyLoadedList.indexOf(value) < 0; | ||
}); | ||
}, 0); | ||
}, | ||
render: function render() { | ||
var className = (0, _classnames2.default)('slick-initialized', 'slick-slider', this.props.className, { | ||
'slick-vertical': this.props.vertical | ||
}); | ||
var spec = (0, _objectAssign2.default)({}, this.props, this.state); | ||
var trackProps = (0, _innerSliderUtils.extractObject)(spec, ['fade', 'cssEase', 'speed', 'infinite', 'centerMode', 'focusOnSelect', 'currentSlide', 'lazyLoad', 'lazyLoadedList', 'rtl', 'slideWidth', 'slideHeight', 'listHeight', 'vertical', 'slidesToShow', 'slidesToScroll', 'slideCount', 'trackStyle', 'variableWidth', 'unslick', 'centerPadding']); | ||
trackProps.focusOnSelect = this.props.focusOnSelect ? this.selectHandler : null; | ||
onLazyLoad && slidesToLoad.length > 0 && onLazyLoad(slidesToLoad); | ||
_this.setState(state, function () { | ||
asNavFor && asNavFor.innerSlider.state.currentSlide !== currentSlide && asNavFor.innerSlider.slideHandler(index); | ||
_this.animationEndCallback = setTimeout(function () { | ||
var animating = nextState.animating, | ||
firstBatch = _objectWithoutProperties(nextState, ['animating']); | ||
var dots; | ||
if (this.props.dots === true && this.state.slideCount >= this.props.slidesToShow) { | ||
var dotProps = (0, _innerSliderUtils.extractObject)(spec, ['dotsClass', 'slideCount', 'slidesToShow', 'currentSlide', 'slidesToScroll', 'clickHandler', 'children', 'customPaging', 'infinite', 'appendDots']); | ||
dotProps.clickHandler = this.changeSlide; | ||
dots = _react2.default.createElement(_dots.Dots, dotProps); | ||
} | ||
_this.setState(firstBatch, function () { | ||
_this.callbackTimers.push(setTimeout(function () { | ||
return _this.setState({ animating: animating }); | ||
}, 10)); | ||
afterChange && afterChange(state.currentSlide); | ||
delete _this.animationEndCallback; | ||
}); | ||
}, speed); | ||
}); | ||
}; | ||
var prevArrow, nextArrow; | ||
var arrowProps = (0, _innerSliderUtils.extractObject)(spec, ['infinite', 'centerMode', 'currentSlide', 'slideCount', 'slidesToShow', 'prevArrow', 'nextArrow']); | ||
arrowProps.clickHandler = this.changeSlide; | ||
_this.changeSlide = function (options) { | ||
var spec = _extends({}, _this.props, _this.state); | ||
var targetSlide = (0, _innerSliderUtils.changeSlide)(spec, options); | ||
if (targetSlide !== 0 && !targetSlide) return; | ||
_this.slideHandler(targetSlide); | ||
}; | ||
if (this.props.arrows) { | ||
prevArrow = _react2.default.createElement(_arrows.PrevArrow, arrowProps); | ||
nextArrow = _react2.default.createElement(_arrows.NextArrow, arrowProps); | ||
} | ||
_this.keyHandler = function (e) { | ||
var dir = (0, _innerSliderUtils.keyHandler)(e, _this.props.accessibility, _this.props.rtl); | ||
dir !== '' && _this.changeSlide({ message: dir }); | ||
}; | ||
var verticalHeightStyle = null; | ||
_this.selectHandler = function (options) { | ||
_this.changeSlide(options); | ||
}; | ||
if (this.props.vertical) { | ||
verticalHeightStyle = { | ||
height: this.state.listHeight | ||
}; | ||
} | ||
_this.swipeStart = function (e) { | ||
var state = (0, _innerSliderUtils.swipeStart)(e, _this.props.swipe, _this.props.draggable); | ||
state !== '' && _this.setState(state); | ||
}; | ||
var centerPaddingStyle = null; | ||
_this.swipeMove = function (e) { | ||
var state = (0, _innerSliderUtils.swipeMove)(e, _extends({}, _this.props, _this.state, { | ||
trackRef: _this.track, | ||
listRef: _this.list, | ||
slideIndex: _this.state.currentSlide | ||
})); | ||
if (!state) return; | ||
_this.setState(state); | ||
}; | ||
if (this.props.vertical === false) { | ||
if (this.props.centerMode === true) { | ||
centerPaddingStyle = { | ||
padding: '0px ' + this.props.centerPadding | ||
}; | ||
_this.swipeEnd = function (e) { | ||
var state = (0, _innerSliderUtils.swipeEnd)(e, _extends({}, _this.props, _this.state, { | ||
trackRef: _this.track, | ||
listRef: _this.list, | ||
slideIndex: _this.state.currentSlide | ||
})); | ||
if (!state) return; | ||
var triggerSlideHandler = state['triggerSlideHandler']; | ||
delete state['triggerSlideHandler']; | ||
_this.setState(state); | ||
if (triggerSlideHandler === undefined) return; | ||
_this.slideHandler(triggerSlideHandler); | ||
}; | ||
_this.slickPrev = function () { | ||
// this and fellow methods are wrapped in setTimeout | ||
// to make sure initialize setState has happened before | ||
// any of such methods are called | ||
_this.callbackTimers.push(setTimeout(function () { | ||
return _this.changeSlide({ message: 'previous' }); | ||
}, 0)); | ||
}; | ||
_this.slickNext = function () { | ||
_this.callbackTimers.push(setTimeout(function () { | ||
return _this.changeSlide({ message: 'next' }); | ||
}, 0)); | ||
}; | ||
_this.slickGoTo = function (slide) { | ||
slide = Number(slide); | ||
if (isNan(slide)) return ''; | ||
_this.callbackTimers.push(setTimeout(function () { | ||
return _this.changeSlide({ | ||
message: 'index', | ||
index: slide, | ||
currentSlide: _this.state.currentSlide | ||
}); | ||
}, 0)); | ||
}; | ||
_this.play = function () { | ||
var nextIndex; | ||
if (_this.props.rtl) { | ||
nextIndex = _this.state.currentSlide - _this.props.slidesToScroll; | ||
} else { | ||
if ((0, _innerSliderUtils.canGoNext)(_extends({}, _this.props, _this.state))) { | ||
nextIndex = _this.state.currentSlide + _this.props.slidesToScroll; | ||
} else { | ||
return false; | ||
} | ||
} | ||
} else { | ||
if (this.props.centerMode === true) { | ||
centerPaddingStyle = { | ||
padding: this.props.centerPadding + ' 0px' | ||
}; | ||
_this.slideHandler(nextIndex); | ||
}; | ||
_this.autoPlay = function (playType) { | ||
if (_this.autoplayTimer) { | ||
console.warn("autoPlay is triggered more than once"); | ||
clearInterval(_this.autoplayTimer); | ||
} | ||
} | ||
var autoplaying = _this.state.autoplaying; | ||
if (playType === 'update') { | ||
if (autoplaying === 'hovered' || autoplaying === 'focused' || autoplaying === 'paused') { | ||
return; | ||
} | ||
} else if (playType === 'leave') { | ||
if (autoplaying === 'paused' || autoplaying === 'focused') { | ||
return; | ||
} | ||
} else if (playType === 'blur') { | ||
if (autoplaying === 'paused' || autoplaying === 'hovered') { | ||
return; | ||
} | ||
} | ||
_this.autoplayTimer = setInterval(_this.play, _this.props.autoplaySpeed + 50); | ||
_this.setState({ autoplaying: 'playing' }); | ||
}; | ||
var listStyle = (0, _objectAssign2.default)({}, verticalHeightStyle, centerPaddingStyle); | ||
var listProps = { | ||
className: 'slick-list', | ||
style: listStyle, | ||
onMouseDown: this.swipeStart, | ||
onMouseMove: this.state.dragging ? this.swipeMove : null, | ||
onMouseUp: this.swipeEnd, | ||
onMouseLeave: this.state.dragging ? this.swipeEnd : null, | ||
onTouchStart: this.swipeStart, | ||
onTouchMove: this.state.dragging ? this.swipeMove : null, | ||
onTouchEnd: this.swipeEnd, | ||
onTouchCancel: this.state.dragging ? this.swipeEnd : null, | ||
onKeyDown: this.props.accessibility ? this.keyHandler : null | ||
_this.pause = function (pauseType) { | ||
if (_this.autoplayTimer) { | ||
clearInterval(_this.autoplayTimer); | ||
_this.autoplayTimer = null; | ||
} | ||
var autoplaying = _this.state.autoplaying; | ||
if (pauseType === 'paused') { | ||
_this.setState({ autoplaying: 'paused' }); | ||
} else if (pauseType === 'focused') { | ||
if (autoplaying === 'hovered' || autoplaying === 'playing') { | ||
_this.setState({ autoplaying: 'focused' }); | ||
} | ||
} else { | ||
// pauseType is 'hovered' | ||
if (autoplaying === 'playing') { | ||
_this.setState({ autoplaying: 'hovered' }); | ||
} | ||
} | ||
}; | ||
var innerSliderProps = { | ||
className: className, | ||
onMouseEnter: this.onInnerSliderEnter, | ||
onMouseLeave: this.onInnerSliderLeave, | ||
onMouseOver: this.onInnerSliderOver, | ||
dir: 'ltr' | ||
_this.onDotsOver = function (e) { | ||
return _this.props.autoplay && _this.pause('hovered'); | ||
}; | ||
if (this.props.unslick) { | ||
listProps = { className: 'slick-list' }; | ||
innerSliderProps = { className: className }; | ||
} | ||
_this.onDotsLeave = function (e) { | ||
return _this.props.autoplay && _this.state.autoplaying === 'hovered' && _this.autoPlay('leave'); | ||
}; | ||
return _react2.default.createElement( | ||
'div', | ||
innerSliderProps, | ||
!this.props.unslick ? prevArrow : '', | ||
_react2.default.createElement( | ||
_this.onTrackOver = function (e) { | ||
return _this.props.autoplay && _this.pause('hovered'); | ||
}; | ||
_this.onTrackLeave = function (e) { | ||
return _this.props.autoplay && _this.state.autoplaying === 'hovered' && _this.autoPlay('leave'); | ||
}; | ||
_this.onSlideFocus = function (e) { | ||
return _this.props.autoplay && _this.pause('focused'); | ||
}; | ||
_this.onSlideBlur = function (e) { | ||
return _this.props.autoplay && _this.state.autoplaying === 'focused' && _this.autoPlay('blur'); | ||
}; | ||
_this.render = function () { | ||
var className = (0, _classnames2.default)('regular', 'slider', 'slick-initialized', 'slick-slider', _this.props.className, { | ||
'slick-vertical': _this.props.vertical | ||
}); | ||
var spec = _extends({}, _this.props, _this.state); | ||
var trackProps = (0, _innerSliderUtils.extractObject)(spec, ['fade', 'cssEase', 'speed', 'infinite', 'centerMode', 'focusOnSelect', 'currentSlide', 'lazyLoad', 'lazyLoadedList', 'rtl', 'slideWidth', 'slideHeight', 'listHeight', 'vertical', 'slidesToShow', 'slidesToScroll', 'slideCount', 'trackStyle', 'variableWidth', 'unslick', 'centerPadding']); | ||
var pauseOnHover = _this.props.pauseOnHover; | ||
trackProps = _extends({}, trackProps, { | ||
onMouseEnter: pauseOnHover ? _this.onTrackOver : null, | ||
onMouseLeave: pauseOnHover ? _this.onTrackLeave : null, | ||
onMouseOver: pauseOnHover ? _this.onTrackOver : null, | ||
focusOnSelect: _this.props.focusOnSelect ? _this.selectHandler : null | ||
}); | ||
var dots; | ||
if (_this.props.dots === true && _this.state.slideCount >= _this.props.slidesToShow) { | ||
var dotProps = (0, _innerSliderUtils.extractObject)(spec, ['dotsClass', 'slideCount', 'slidesToShow', 'currentSlide', 'slidesToScroll', 'clickHandler', 'children', 'customPaging', 'infinite', 'appendDots']); | ||
var pauseOnDotsHover = _this.props.pauseOnDotsHover; | ||
dotProps = _extends({}, dotProps, { | ||
clickHandler: _this.changeSlide, | ||
onMouseEnter: pauseOnDotsHover ? _this.onDotsLeave : null, | ||
onMouseOver: pauseOnDotsHover ? _this.onDotsOver : null, | ||
onMouseLeave: pauseOnDotsHover ? _this.onDotsLeave : null | ||
}); | ||
dots = _react2.default.createElement(_dots.Dots, dotProps); | ||
} | ||
var prevArrow, nextArrow; | ||
var arrowProps = (0, _innerSliderUtils.extractObject)(spec, ['infinite', 'centerMode', 'currentSlide', 'slideCount', 'slidesToShow', 'prevArrow', 'nextArrow']); | ||
arrowProps.clickHandler = _this.changeSlide; | ||
if (_this.props.arrows) { | ||
prevArrow = _react2.default.createElement(_arrows.PrevArrow, arrowProps); | ||
nextArrow = _react2.default.createElement(_arrows.NextArrow, arrowProps); | ||
} | ||
var verticalHeightStyle = null; | ||
if (_this.props.vertical) { | ||
verticalHeightStyle = { | ||
height: _this.state.listHeight | ||
}; | ||
} | ||
var centerPaddingStyle = null; | ||
if (_this.props.vertical === false) { | ||
if (_this.props.centerMode === true) { | ||
centerPaddingStyle = { | ||
padding: '0px ' + _this.props.centerPadding | ||
}; | ||
} | ||
} else { | ||
if (_this.props.centerMode === true) { | ||
centerPaddingStyle = { | ||
padding: _this.props.centerPadding + ' 0px' | ||
}; | ||
} | ||
} | ||
var listStyle = _extends({}, verticalHeightStyle, centerPaddingStyle); | ||
var touchMove = _this.props.touchMove; | ||
var listProps = { | ||
className: 'slick-list', | ||
style: listStyle, | ||
onMouseDown: touchMove ? _this.swipeStart : null, | ||
onMouseMove: _this.state.dragging && touchMove ? _this.swipeMove : null, | ||
onMouseUp: touchMove ? _this.swipeEnd : null, | ||
onMouseLeave: _this.state.dragging && touchMove ? _this.swipeEnd : null, | ||
onTouchStart: touchMove ? _this.swipeStart : null, | ||
onTouchMove: _this.state.dragging && touchMove ? _this.swipeMove : null, | ||
onTouchEnd: touchMove ? _this.swipeEnd : null, | ||
onTouchCancel: _this.state.dragging && touchMove ? _this.swipeEnd : null, | ||
onKeyDown: _this.props.accessibility ? _this.keyHandler : null | ||
}; | ||
var innerSliderProps = { | ||
className: className, | ||
dir: 'ltr' | ||
}; | ||
if (_this.props.unslick) { | ||
listProps = { className: 'slick-list' }; | ||
innerSliderProps = { className: className }; | ||
} | ||
return _react2.default.createElement( | ||
'div', | ||
_extends({ ref: this.listRefHandler }, listProps), | ||
innerSliderProps, | ||
!_this.props.unslick ? prevArrow : '', | ||
_react2.default.createElement( | ||
_track.Track, | ||
_extends({ ref: this.trackRefHandler }, trackProps), | ||
this.props.children | ||
) | ||
), | ||
!this.props.unslick ? nextArrow : '', | ||
!this.props.unslick ? dots : '' | ||
); | ||
'div', | ||
_extends({ ref: _this.listRefHandler }, listProps), | ||
_react2.default.createElement( | ||
_track.Track, | ||
_extends({ ref: _this.trackRefHandler }, trackProps), | ||
_this.props.children | ||
) | ||
), | ||
!_this.props.unslick ? nextArrow : '', | ||
!_this.props.unslick ? dots : '' | ||
); | ||
}; | ||
_this.list = null; | ||
_this.track = null; | ||
_this.state = _extends({}, _initialState2.default, { | ||
currentSlide: _this.props.initialSlide | ||
}); | ||
_this.callbackTimers = []; | ||
return _this; | ||
} | ||
}); | ||
return InnerSlider; | ||
}(_react2.default.Component); |
@@ -13,6 +13,2 @@ 'use strict'; | ||
var _objectAssign = require('object-assign'); | ||
var _objectAssign2 = _interopRequireDefault(_objectAssign); | ||
var _json2mq = require('json2mq'); | ||
@@ -65,7 +61,7 @@ | ||
_this.slickPause = function () { | ||
return _this.innerSlider.pause(); | ||
return _this.innerSlider.pause('paused'); | ||
}; | ||
_this.slickPlay = function () { | ||
return _this.innerSlider.autoPlay(); | ||
return _this.innerSlider.autoPlay('play'); | ||
}; | ||
@@ -140,5 +136,5 @@ | ||
}); | ||
settings = newProps[0].settings === 'unslick' ? 'unslick' : (0, _objectAssign2.default)({}, _defaultProps2.default, this.props, newProps[0].settings); | ||
settings = newProps[0].settings === 'unslick' ? 'unslick' : _extends({}, _defaultProps2.default, this.props, newProps[0].settings); | ||
} else { | ||
settings = (0, _objectAssign2.default)({}, _defaultProps2.default, this.props); | ||
settings = _extends({}, _defaultProps2.default, this.props); | ||
} | ||
@@ -178,9 +174,11 @@ | ||
if (settings === 'unslick') { | ||
settings = (0, _objectAssign2.default)({ unslick: true }, _defaultProps2.default, this.props); | ||
settings.slidesToShow = children.length; | ||
settings.className += ' unslicked'; | ||
var className = 'regular slider ' + (this.props.className || ''); | ||
return _react2.default.createElement( | ||
'div', | ||
{ className: className }, | ||
children | ||
); | ||
} else if (children.length <= settings.slidesToShow) { | ||
settings.unslick = true; | ||
settings.slidesToShow = children.length; | ||
settings.className += ' unslicked'; | ||
} | ||
@@ -187,0 +185,0 @@ return _react2.default.createElement( |
@@ -6,2 +6,4 @@ 'use strict'; | ||
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; | ||
var _react = require('react'); | ||
@@ -11,6 +13,2 @@ | ||
var _objectAssign = require('object-assign'); | ||
var _objectAssign2 = _interopRequireDefault(_objectAssign); | ||
var _classnames = require('classnames'); | ||
@@ -20,4 +18,2 @@ | ||
var _trackUtils = require('./utils/trackUtils'); | ||
var _innerSliderUtils = require('./utils/innerSliderUtils'); | ||
@@ -117,3 +113,3 @@ | ||
} | ||
var childStyle = getSlideStyle((0, _objectAssign2.default)({}, spec, { index: index })); | ||
var childStyle = getSlideStyle(_extends({}, spec, { index: index })); | ||
var slideClass = child.props.className || ''; | ||
@@ -125,5 +121,5 @@ | ||
'data-index': index, | ||
className: (0, _classnames2.default)(getSlideClasses((0, _objectAssign2.default)({ index: index }, spec)), slideClass), | ||
className: (0, _classnames2.default)(getSlideClasses(_extends({}, spec, { index: index })), slideClass), | ||
tabIndex: '-1', | ||
style: (0, _objectAssign2.default)({ outline: 'none' }, child.props.style || {}, childStyle), | ||
style: _extends({ outline: 'none' }, child.props.style || {}, childStyle), | ||
onClick: function onClick(e) { | ||
@@ -140,3 +136,3 @@ child.props && child.props.onClick && child.props.onClick(e); | ||
var preCloneNo = childrenCount - index; | ||
if (preCloneNo <= (0, _trackUtils.getPreClones)(spec) && childrenCount !== spec.slidesToShow) { | ||
if (preCloneNo <= (0, _innerSliderUtils.getPreClones)(spec) && childrenCount !== spec.slidesToShow) { | ||
key = -preCloneNo; | ||
@@ -150,4 +146,4 @@ if (key >= startIndex) { | ||
tabIndex: '-1', | ||
className: (0, _classnames2.default)(getSlideClasses((0, _objectAssign2.default)({ index: key }, spec)), slideClass), | ||
style: (0, _objectAssign2.default)({}, child.props.style || {}, childStyle), | ||
className: (0, _classnames2.default)(getSlideClasses(_extends({}, spec, { index: key })), slideClass), | ||
style: _extends({}, child.props.style || {}, childStyle), | ||
onClick: function onClick(e) { | ||
@@ -171,4 +167,4 @@ child.props && child.props.onClick && child.props.onClick(e); | ||
tabIndex: '-1', | ||
className: (0, _classnames2.default)(getSlideClasses((0, _objectAssign2.default)({ index: key }, spec)), slideClass), | ||
style: (0, _objectAssign2.default)({}, child.props.style || {}, childStyle), | ||
className: (0, _classnames2.default)(getSlideClasses(_extends({}, spec, { index: key })), slideClass), | ||
style: _extends({}, child.props.style || {}, childStyle), | ||
onClick: function onClick(e) { | ||
@@ -202,7 +198,12 @@ child.props && child.props.onClick && child.props.onClick(e); | ||
Track.prototype.render = function render() { | ||
// var slides = renderSlides.call(this, this.props); | ||
var slides = renderSlides(this.props); | ||
var _props = this.props, | ||
onMouseEnter = _props.onMouseEnter, | ||
onMouseOver = _props.onMouseOver, | ||
onMouseLeave = _props.onMouseLeave; | ||
var mouseEvents = { onMouseEnter: onMouseEnter, onMouseOver: onMouseOver, onMouseLeave: onMouseLeave }; | ||
return _react2.default.createElement( | ||
'div', | ||
{ className: 'slick-track', style: this.props.trackStyle }, | ||
_extends({ className: 'slick-track', style: this.props.trackStyle }, mouseEvents), | ||
slides | ||
@@ -209,0 +210,0 @@ ); |
'use strict'; | ||
exports.__esModule = true; | ||
exports.initializedState = exports.extractObject = exports.canGoNext = exports.getSwipeDirection = exports.getHeight = exports.getWidth = exports.slidesOnRight = exports.slidesOnLeft = exports.lazyEndIndex = exports.lazyStartIndex = exports.getRequiredLazySlides = exports.getOnDemandLazySlides = undefined; | ||
exports.slidesOnLeft = exports.slidesOnRight = exports.siblingDirection = exports.getTotalSlides = exports.getPostClones = exports.getPreClones = exports.getTrackLeft = exports.getTrackAnimateCSS = exports.getTrackCSS = exports.checkSpecKeys = exports.getSlideCount = exports.checkNavigable = exports.getNavigableIndexes = exports.swipeEnd = exports.swipeMove = exports.swipeStart = exports.keyHandler = exports.changeSlide = exports.slideHandler = exports.initializedState = exports.extractObject = exports.canGoNext = exports.getSwipeDirection = exports.getHeight = exports.getWidth = exports.lazySlidesOnRight = exports.lazySlidesOnLeft = exports.lazyEndIndex = exports.lazyStartIndex = exports.getRequiredLazySlides = exports.getOnDemandLazySlides = undefined; | ||
var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; | ||
var _react = require('react'); | ||
@@ -16,3 +18,2 @@ | ||
// return list of slides that need to be loaded and are not in lazyLoadedList | ||
var getOnDemandLazySlides = exports.getOnDemandLazySlides = function getOnDemandLazySlides(spec) { | ||
@@ -43,16 +44,11 @@ var onDemandSlides = []; | ||
var lazyStartIndex = exports.lazyStartIndex = function lazyStartIndex(spec) { | ||
return spec.currentSlide - slidesOnLeft(spec); | ||
return spec.currentSlide - lazySlidesOnLeft(spec); | ||
}; | ||
// endIndex that needs to be present but is exclusive | ||
var lazyEndIndex = exports.lazyEndIndex = function lazyEndIndex(spec) { | ||
return spec.currentSlide + slidesOnRight(spec); | ||
return spec.currentSlide + lazySlidesOnRight(spec); | ||
}; | ||
// no of slides on left of current in active frame | ||
var slidesOnLeft = exports.slidesOnLeft = function slidesOnLeft(spec) { | ||
var lazySlidesOnLeft = exports.lazySlidesOnLeft = function lazySlidesOnLeft(spec) { | ||
return spec.centerMode ? Math.floor(spec.slidesToShow / 2) + (parseInt(spec.centerPadding) > 0 ? 1 : 0) : 0; | ||
}; | ||
// no of slides on right of current in active frame | ||
var slidesOnRight = exports.slidesOnRight = function slidesOnRight(spec) { | ||
var lazySlidesOnRight = exports.lazySlidesOnRight = function lazySlidesOnRight(spec) { | ||
return spec.centerMode ? Math.floor((spec.slidesToShow - 1) / 2) + 1 + (parseInt(spec.centerPadding) > 0 ? 1 : 0) : spec.slidesToShow; | ||
@@ -65,9 +61,5 @@ }; | ||
}; | ||
// get height of an element | ||
var getHeight = exports.getHeight = function getHeight(elem) { | ||
return elem && elem.offsetHeight || 0; | ||
}; | ||
// in case of swipe event, get direction of the swipe event | ||
var getSwipeDirection = exports.getSwipeDirection = function getSwipeDirection(touchObject) { | ||
@@ -141,4 +133,4 @@ var verticalSwiping = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false; | ||
var listHeight = slideHeight * spec.slidesToShow; | ||
var currentSlide = spec.currentSlide || spec.initialSlide; | ||
if (spec.rtl && !spec.currentSlide) { | ||
var currentSlide = spec.currentSlide === undefined ? spec.initialSlide : spec.currentSlide; | ||
if (spec.rtl && spec.currentSlide === undefined) { | ||
currentSlide = slideCount - 1 - spec.initialSlide; | ||
@@ -150,4 +142,600 @@ } | ||
return { slideCount: slideCount, slideWidth: slideWidth, listWidth: listWidth, trackWidth: trackWidth, currentSlide: currentSlide, | ||
var state = { slideCount: slideCount, slideWidth: slideWidth, listWidth: listWidth, trackWidth: trackWidth, currentSlide: currentSlide, | ||
slideHeight: slideHeight, listHeight: listHeight, lazyLoadedList: lazyLoadedList }; | ||
if (spec.autoplaying === null && spec.autoplay) { | ||
state['autoplaying'] = 'playing'; | ||
} | ||
return state; | ||
}; | ||
var slideHandler = exports.slideHandler = function slideHandler(spec) { | ||
var waitForAnimate = spec.waitForAnimate, | ||
animating = spec.animating, | ||
fade = spec.fade, | ||
infinite = spec.infinite, | ||
index = spec.index, | ||
slideCount = spec.slideCount, | ||
lazyLoadedList = spec.lazyLoadedList, | ||
lazyLoad = spec.lazyLoad, | ||
onLazyLoad = spec.onLazyLoad, | ||
asNavFor = spec.asNavFor, | ||
currentSlide = spec.currentSlide, | ||
speed = spec.speed, | ||
centerMode = spec.centerMode, | ||
slidesToScroll = spec.slidesToScroll, | ||
slidesToShow = spec.slidesToShow, | ||
useCSS = spec.useCSS; | ||
if (waitForAnimate && animating) return {}; | ||
var animationSlide = index, | ||
finalSlide = void 0, | ||
animationLeft = void 0, | ||
finalLeft = void 0; | ||
var state = {}, | ||
nextState = {}; | ||
if (fade) { | ||
if (!infinite && (index < 0 || index >= slideCount)) return {}; | ||
if (index < 0) { | ||
animationSlide = index + slideCount; | ||
} else if (index >= slideCount) { | ||
animationSlide = index - slideCount; | ||
} | ||
if (lazyLoad && lazyLoadedList.indexOf(animationSlide) < 0) { | ||
lazyLoadedList.push(animationSlide); | ||
} | ||
state = { | ||
animating: true, | ||
currentSlide: animationSlide, | ||
lazyLoadedList: lazyLoadedList | ||
}; | ||
nextState = { animating: false }; | ||
} else { | ||
finalSlide = animationSlide; | ||
if (animationSlide < 0) { | ||
finalSlide = animationSlide + slideCount; | ||
if (!infinite) finalSlide = 0;else if (slideCount % slidesToScroll !== 0) finalSlide = slideCount - slideCount % slidesToScroll; | ||
} else if (!canGoNext(spec) && animationSlide > currentSlide) { | ||
animationSlide = finalSlide = currentSlide; | ||
} else if (centerMode && animationSlide >= slideCount) { | ||
animationSlide = infinite ? slideCount : slideCount - 1; | ||
finalSlide = infinite ? 0 : slideCount - 1; | ||
} else if (animationSlide >= slideCount) { | ||
finalSlide = animationSlide - slideCount; | ||
if (!infinite) finalSlide = slideCount - slidesToShow;else if (slideCount % slidesToScroll !== 0) finalSlide = 0; | ||
} | ||
animationLeft = getTrackLeft(_extends({}, spec, { slideIndex: animationSlide })); | ||
finalLeft = getTrackLeft(_extends({}, spec, { slideIndex: finalSlide })); | ||
if (!infinite) { | ||
if (animationLeft === finalLeft) animationSlide = finalSlide; | ||
animationLeft = finalLeft; | ||
} | ||
lazyLoad && lazyLoadedList.concat(getOnDemandLazySlides(_extends({}, spec, { currentSlide: animationSlide }))); | ||
if (!useCSS) { | ||
state = { | ||
currentSlide: finalSlide, | ||
trackStyle: getTrackCSS(_extends({}, spec, { left: finalLeft })), | ||
lazyLoadedList: lazyLoadedList | ||
}; | ||
} else { | ||
state = { | ||
animating: true, | ||
currentSlide: finalSlide, | ||
trackStyle: getTrackAnimateCSS(_extends({}, spec, { left: animationLeft })), | ||
lazyLoadedList: lazyLoadedList | ||
}; | ||
nextState = { | ||
animating: false, | ||
currentSlide: finalSlide, | ||
trackStyle: getTrackCSS(_extends({}, spec, { left: finalLeft })), | ||
swipeLeft: null | ||
}; | ||
} | ||
} | ||
return { state: state, nextState: nextState }; | ||
}; | ||
var changeSlide = exports.changeSlide = function changeSlide(spec, options) { | ||
var indexOffset, previousInt, slideOffset, unevenOffset, targetSlide; | ||
var slidesToScroll = spec.slidesToScroll, | ||
slidesToShow = spec.slidesToShow, | ||
centerMode = spec.centerMode, | ||
rtl = spec.rtl, | ||
slideCount = spec.slideCount, | ||
currentSlide = spec.currentSlide, | ||
lazyLoad = spec.lazyLoad, | ||
infinite = spec.infinite; | ||
unevenOffset = slideCount % slidesToScroll !== 0; | ||
indexOffset = unevenOffset ? 0 : (slideCount - currentSlide) % slidesToScroll; | ||
if (options.message === 'previous') { | ||
slideOffset = indexOffset === 0 ? slidesToScroll : slidesToShow - indexOffset; | ||
targetSlide = currentSlide - slideOffset; | ||
if (lazyLoad && !infinite) { | ||
previousInt = currentSlide - slideOffset; | ||
targetSlide = previousInt === -1 ? slideCount - 1 : previousInt; | ||
} | ||
} else if (options.message === 'next') { | ||
slideOffset = indexOffset === 0 ? slidesToScroll : indexOffset; | ||
targetSlide = currentSlide + slideOffset; | ||
if (lazyLoad && !infinite) { | ||
targetSlide = (currentSlide + slidesToScroll) % slideCount + indexOffset; | ||
} | ||
} else if (options.message === 'dots') { | ||
// Click on dots | ||
targetSlide = options.index * options.slidesToScroll; | ||
if (targetSlide === options.currentSlide) { | ||
return null; | ||
} | ||
} else if (options.message === 'children') { | ||
// Click on the slides | ||
targetSlide = options.index; | ||
if (targetSlide === options.currentSlide) { | ||
return null; | ||
} | ||
if (infinite) { | ||
var direction = siblingDirection(_extends({}, spec, { targetSlide: targetSlide })); | ||
if (targetSlide > options.currentSlide && direction === 'left') { | ||
targetSlide = targetSlide - slideCount; | ||
} else if (targetSlide < options.currentSlide && direction === 'right') { | ||
targetSlide = targetSlide + slideCount; | ||
} | ||
} | ||
} else if (options.message === 'index') { | ||
targetSlide = Number(options.index); | ||
if (targetSlide === options.currentSlide) { | ||
return null; | ||
} | ||
} | ||
return targetSlide; | ||
}; | ||
var keyHandler = exports.keyHandler = function keyHandler(e, accessibility, rtl) { | ||
if (e.target.tagName.match('TEXTAREA|INPUT|SELECT') || !accessibility) return ''; | ||
if (e.keyCode === 37) return rtl ? 'next' : 'previous'; | ||
if (e.keyCode === 39) return rtl ? 'previous' : 'next'; | ||
return ''; | ||
}; | ||
var swipeStart = exports.swipeStart = function swipeStart(e, swipe, draggable) { | ||
e.target.tagName === 'IMG' && e.preventDefault(); | ||
if (!swipe || !draggable && e.type.indexOf('mouse') !== -1) return ''; | ||
return { | ||
dragging: true, | ||
touchObject: { | ||
startX: e.touches ? e.touches[0].pageX : e.clientX, | ||
startY: e.touches ? e.touches[0].pageY : e.clientY, | ||
curX: e.touches ? e.touches[0].pageX : e.clientX, | ||
curY: e.touches ? e.touches[0].pageY : e.clientY | ||
} | ||
}; | ||
}; | ||
var swipeMove = exports.swipeMove = function swipeMove(e, spec) { | ||
// spec also contains, trackRef and slideIndex | ||
var scrolling = spec.scrolling, | ||
animating = spec.animating, | ||
vertical = spec.vertical, | ||
swipeToSlide = spec.swipeToSlide, | ||
verticalSwiping = spec.verticalSwiping, | ||
rtl = spec.rtl, | ||
currentSlide = spec.currentSlide, | ||
edgeFriction = spec.edgeFriction, | ||
edgeDragged = spec.edgeDragged, | ||
onEdge = spec.onEdge, | ||
swiped = spec.swiped, | ||
swiping = spec.swiping, | ||
slideCount = spec.slideCount, | ||
slidesToScroll = spec.slidesToScroll, | ||
infinite = spec.infinite, | ||
touchObject = spec.touchObject, | ||
swipeEvent = spec.swipeEvent, | ||
listHeight = spec.listHeight, | ||
listWidth = spec.listWidth; | ||
if (scrolling) return; | ||
if (animating) return e.preventDefault(); | ||
if (vertical && swipeToSlide && verticalSwiping) e.preventDefault(); | ||
var swipeLeft = void 0, | ||
state = {}; | ||
var curLeft = getTrackLeft(spec); | ||
touchObject.curX = e.touches ? e.touches[0].pageX : e.clientX; | ||
touchObject.curY = e.touches ? e.touches[0].pageY : e.clientY; | ||
touchObject.swipeLength = Math.round(Math.sqrt(Math.pow(touchObject.curX - touchObject.startX, 2))); | ||
var verticalSwipeLength = Math.round(Math.sqrt(Math.pow(touchObject.curY - touchObject.startY, 2))); | ||
if (!verticalSwiping && !swiping && verticalSwipeLength > 10) { | ||
return { scrolling: true }; | ||
} | ||
if (verticalSwiping) touchObject.swipeLength = verticalSwipeLength; | ||
var positionOffset = (!rtl ? 1 : -1) * (touchObject.curX > touchObject.startX ? 1 : -1); | ||
if (verticalSwiping) positionOffset = touchObject.curY > touchObject.startY ? 1 : -1; | ||
var dotCount = Math.ceil(slideCount / slidesToScroll); | ||
var swipeDirection = getSwipeDirection(spec.touchObject, verticalSwiping); | ||
var touchSwipeLength = touchObject.swipeLength; | ||
if (!infinite) { | ||
if (currentSlide === 0 && swipeDirection === 'right' || currentSlide + 1 >= dotCount && swipeDirection === 'left' || !canGoNext(spec) && swipeDirection === 'left') { | ||
touchSwipeLength = touchObject.swipeLength * edgeFriction; | ||
if (edgeDragged === false && onEdge) { | ||
onEdge(swipeDirection); | ||
state['edgeDragged'] = true; | ||
} | ||
} | ||
} | ||
if (!swiped && swipeEvent) { | ||
swipeEvent(swipeDirection); | ||
state['swiped'] = true; | ||
} | ||
if (!vertical) { | ||
if (!rtl) { | ||
swipeLeft = curLeft + touchSwipeLength * positionOffset; | ||
} else { | ||
swipeLeft = curLeft - touchSwipeLength * positionOffset; | ||
} | ||
} else { | ||
swipeLeft = curLeft + touchSwipeLength * (listHeight / listWidth) * positionOffset; | ||
} | ||
if (verticalSwiping) { | ||
swipeLeft = curLeft + touchSwipeLength * positionOffset; | ||
} | ||
state = _extends({}, state, { | ||
touchObject: touchObject, | ||
swipeLeft: swipeLeft, | ||
trackStyle: getTrackCSS(_extends({}, spec, { left: swipeLeft })) | ||
}); | ||
if (Math.abs(touchObject.curX - touchObject.startX) < Math.abs(touchObject.curY - touchObject.startY) * 0.8) { | ||
return state; | ||
} | ||
if (touchObject.swipeLength > 10) { | ||
state['swiping'] = true; | ||
e.preventDefault(); | ||
} | ||
return state; | ||
}; | ||
var swipeEnd = exports.swipeEnd = function swipeEnd(e, spec) { | ||
var dragging = spec.dragging, | ||
swipe = spec.swipe, | ||
touchObject = spec.touchObject, | ||
listWidth = spec.listWidth, | ||
touchThreshold = spec.touchThreshold, | ||
verticalSwiping = spec.verticalSwiping, | ||
listHeight = spec.listHeight, | ||
currentSlide = spec.currentSlide, | ||
swipeToSlide = spec.swipeToSlide, | ||
scrolling = spec.scrolling, | ||
onSwipe = spec.onSwipe; | ||
if (!dragging) { | ||
if (swipe) e.preventDefault(); | ||
return {}; | ||
} | ||
var minSwipe = verticalSwiping ? listHeight / touchThreshold : listWidth / touchThreshold; | ||
var swipeDirection = getSwipeDirection(touchObject, verticalSwiping); | ||
// reset the state of touch related state variables. | ||
var state = { | ||
dragging: false, | ||
edgeDragged: false, | ||
scrolling: false, | ||
swiping: false, | ||
swiped: false, | ||
swipeLeft: null, | ||
touchObject: {} | ||
}; | ||
if (scrolling) { | ||
return state; | ||
} | ||
if (!touchObject.swipeLength) { | ||
return state; | ||
} | ||
if (touchObject.swipeLength > minSwipe) { | ||
e.preventDefault(); | ||
if (onSwipe) { | ||
onSwipe(swipeDirection); | ||
} | ||
var slideCount = void 0, | ||
newSlide = void 0; | ||
switch (swipeDirection) { | ||
case 'left': | ||
case 'up': | ||
newSlide = currentSlide + getSlideCount(spec); | ||
slideCount = swipeToSlide ? checkNavigable(spec, newSlide) : newSlide; | ||
state['currentDirection'] = 0; | ||
break; | ||
case 'right': | ||
case 'down': | ||
newSlide = currentSlide - getSlideCount(spec); | ||
slideCount = swipeToSlide ? checkNavigable(spec, newSlide) : newSlide; | ||
state['currentDirection'] = 1; | ||
break; | ||
default: | ||
slideCount = currentSlide; | ||
} | ||
state['triggerSlideHandler'] = slideCount; | ||
} else { | ||
// Adjust the track back to it's original position. | ||
var currentLeft = getTrackLeft(spec); | ||
state['trackStyle'] = getTrackAnimateCSS(_extends({}, spec, { left: currentLeft })); | ||
} | ||
return state; | ||
}; | ||
var getNavigableIndexes = exports.getNavigableIndexes = function getNavigableIndexes(spec) { | ||
var max = spec.infinite ? spec.slideCount * 2 : spec.slideCount; | ||
var breakpoint = spec.infinite ? spec.slidesToShow * -1 : 0; | ||
var counter = spec.infinite ? spec.slidesToShow * -1 : 0; | ||
var indexes = []; | ||
while (breakpoint < max) { | ||
indexes.push(breakpoint); | ||
breakpoint = counter + spec.slidesToScroll; | ||
counter += Math.min(spec.slidesToScroll, spec.slidesToShow); | ||
} | ||
return indexes; | ||
}; | ||
var checkNavigable = exports.checkNavigable = function checkNavigable(spec, index) { | ||
var navigables = getNavigableIndexes(spec); | ||
var prevNavigable = 0; | ||
if (index > navigables[navigables.length - 1]) { | ||
index = navigables[navigables.length - 1]; | ||
} else { | ||
for (var n in navigables) { | ||
if (index < navigables[n]) { | ||
index = prevNavigable; | ||
break; | ||
} | ||
prevNavigable = navigables[n]; | ||
} | ||
} | ||
return index; | ||
}; | ||
var getSlideCount = exports.getSlideCount = function getSlideCount(spec) { | ||
var centerOffset = spec.centerMode ? spec.slideWidth * Math.floor(spec.slidesToShow / 2) : 0; | ||
if (spec.swipeToSlide) { | ||
var swipedSlide = void 0; | ||
var slickList = _reactDom2.default.findDOMNode(spec.listRef); | ||
var slides = slickList.querySelectorAll('.slick-slide'); | ||
Array.from(slides).every(function (slide) { | ||
if (!spec.vertical) { | ||
if (slide.offsetLeft - centerOffset + getWidth(slide) / 2 > spec.swipeLeft * -1) { | ||
swipedSlide = slide; | ||
return false; | ||
} | ||
} else { | ||
if (slide.offsetTop + getHeight(slide) / 2 > spec.swipeLeft * -1) { | ||
swipedSlide = slide; | ||
return false; | ||
} | ||
} | ||
return true; | ||
}); | ||
if (!swipedSlide) { | ||
return 0; | ||
} | ||
var currentIndex = spec.rtl === true ? spec.slideCount - spec.currentSlide : spec.currentSlide; | ||
var slidesTraversed = Math.abs(swipedSlide.dataset.index - currentIndex) || 1; | ||
return slidesTraversed; | ||
} else { | ||
return spec.slidesToScroll; | ||
} | ||
}; | ||
var checkSpecKeys = exports.checkSpecKeys = function checkSpecKeys(spec, keysArray) { | ||
return keysArray.reduce(function (value, key) { | ||
return value && spec.hasOwnProperty(key); | ||
}, true) ? null : console.error('Keys Missing:', spec); | ||
}; | ||
var getTrackCSS = exports.getTrackCSS = function getTrackCSS(spec) { | ||
checkSpecKeys(spec, ['left', 'variableWidth', 'slideCount', 'slidesToShow', 'slideWidth']); | ||
var trackWidth = void 0, | ||
trackHeight = void 0; | ||
var trackChildren = spec.slideCount + 2 * spec.slidesToShow; | ||
if (!spec.vertical) { | ||
trackWidth = getTotalSlides(spec) * spec.slideWidth; | ||
} else { | ||
trackHeight = trackChildren * spec.slideHeight; | ||
} | ||
var style = { | ||
opacity: 1, | ||
transition: '', | ||
WebkitTransition: '' | ||
}; | ||
if (spec.useTransform) { | ||
var WebkitTransform = !spec.vertical ? 'translate3d(' + spec.left + 'px, 0px, 0px)' : 'translate3d(0px, ' + spec.left + 'px, 0px)'; | ||
var transform = !spec.vertical ? 'translate3d(' + spec.left + 'px, 0px, 0px)' : 'translate3d(0px, ' + spec.left + 'px, 0px)'; | ||
var msTransform = !spec.vertical ? 'translateX(' + spec.left + 'px)' : 'translateY(' + spec.left + 'px)'; | ||
style = _extends({}, style, { | ||
WebkitTransform: WebkitTransform, | ||
transform: transform, | ||
msTransform: msTransform | ||
}); | ||
} else { | ||
if (spec.vertical) { | ||
style['top'] = spec.left; | ||
} else { | ||
style['left'] = spec.left; | ||
} | ||
} | ||
if (spec.fade) style = { opacity: 1 }; | ||
if (trackWidth) style.width = trackWidth; | ||
if (trackHeight) style.height = trackHeight; | ||
// Fallback for IE8 | ||
if (window && !window.addEventListener && window.attachEvent) { | ||
if (!spec.vertical) { | ||
style.marginLeft = spec.left + 'px'; | ||
} else { | ||
style.marginTop = spec.left + 'px'; | ||
} | ||
} | ||
return style; | ||
}; | ||
var getTrackAnimateCSS = exports.getTrackAnimateCSS = function getTrackAnimateCSS(spec) { | ||
checkSpecKeys(spec, ['left', 'variableWidth', 'slideCount', 'slidesToShow', 'slideWidth', 'speed', 'cssEase']); | ||
var style = getTrackCSS(spec); | ||
// useCSS is true by default so it can be undefined | ||
if (spec.useTransform) { | ||
style.WebkitTransition = '-webkit-transform ' + spec.speed + 'ms ' + spec.cssEase; | ||
style.transition = 'transform ' + spec.speed + 'ms ' + spec.cssEase; | ||
} else { | ||
if (spec.vertical) { | ||
style.transition = 'top ' + spec.speed + 'ms ' + spec.cssEase; | ||
} else { | ||
style.transition = 'left ' + spec.speed + 'ms ' + spec.cssEase; | ||
} | ||
} | ||
return style; | ||
}; | ||
var getTrackLeft = exports.getTrackLeft = function getTrackLeft(spec) { | ||
if (spec.unslick) { | ||
return 0; | ||
} | ||
checkSpecKeys(spec, ['slideIndex', 'trackRef', 'infinite', 'centerMode', 'slideCount', 'slidesToShow', 'slidesToScroll', 'slideWidth', 'listWidth', 'variableWidth', 'slideHeight']); | ||
var slideIndex = spec.slideIndex, | ||
trackRef = spec.trackRef, | ||
infinite = spec.infinite, | ||
centerMode = spec.centerMode, | ||
slideCount = spec.slideCount, | ||
slidesToShow = spec.slidesToShow, | ||
slidesToScroll = spec.slidesToScroll, | ||
slideWidth = spec.slideWidth, | ||
listWidth = spec.listWidth, | ||
variableWidth = spec.variableWidth, | ||
slideHeight = spec.slideHeight, | ||
fade = spec.fade, | ||
vertical = spec.vertical; | ||
var slideOffset = 0; | ||
var targetLeft; | ||
var targetSlide; | ||
var verticalOffset = 0; | ||
if (fade || spec.slideCount === 1) { | ||
return 0; | ||
} | ||
var slidesToOffset = 0; | ||
if (infinite) { | ||
slidesToOffset = -getPreClones(spec); // bring active slide to the beginning of visual area | ||
// if next scroll doesn't have enough children, just reach till the end of original slides instead of shifting slidesToScroll children | ||
if (slideCount % slidesToScroll !== 0 && slideIndex + slidesToScroll > slideCount) { | ||
slidesToOffset = -(slideIndex > slideCount ? slidesToShow - (slideIndex - slideCount) : slideCount % slidesToScroll); | ||
} | ||
// shift current slide to center of the frame | ||
if (centerMode) { | ||
slidesToOffset += parseInt(slidesToShow / 2); | ||
} | ||
} else { | ||
if (slideCount % slidesToScroll !== 0 && slideIndex + slidesToScroll > slideCount) { | ||
slidesToOffset = slidesToShow - slideCount % slidesToScroll; | ||
} | ||
if (centerMode) { | ||
slidesToOffset = parseInt(slidesToShow / 2); | ||
} | ||
} | ||
slideOffset = slidesToOffset * slideWidth; | ||
verticalOffset = slidesToOffset * slideHeight; | ||
if (!vertical) { | ||
targetLeft = slideIndex * slideWidth * -1 + slideOffset; | ||
} else { | ||
targetLeft = slideIndex * slideHeight * -1 + verticalOffset; | ||
} | ||
if (variableWidth === true) { | ||
var targetSlideIndex; | ||
var lastSlide = _reactDom2.default.findDOMNode(trackRef).children[slideCount - 1]; | ||
targetSlideIndex = slideIndex + getPreClones(spec); | ||
targetSlide = _reactDom2.default.findDOMNode(trackRef).childNodes[targetSlideIndex]; | ||
targetLeft = targetSlide ? targetSlide.offsetLeft * -1 : 0; | ||
if (centerMode === true) { | ||
targetSlideIndex = infinite ? slideIndex + getPreClones(spec) : slideIndex; | ||
targetSlide = _reactDom2.default.findDOMNode(trackRef).children[targetSlideIndex]; | ||
targetLeft = 0; | ||
for (var slide = 0; slide < targetSlideIndex; slide++) { | ||
targetLeft -= _reactDom2.default.findDOMNode(trackRef).children[slide].offsetWidth; | ||
} | ||
targetLeft -= parseInt(spec.centerPadding); | ||
targetLeft += (listWidth - targetSlide.offsetWidth) / 2; | ||
} | ||
} | ||
return targetLeft; | ||
}; | ||
var getPreClones = exports.getPreClones = function getPreClones(spec) { | ||
if (spec.unslick || !spec.infinite) { | ||
return 0; | ||
} | ||
if (spec.variableWidth) { | ||
return spec.slideCount; | ||
} | ||
return spec.slidesToShow + (spec.centerMode ? 1 : 0); | ||
}; | ||
var getPostClones = exports.getPostClones = function getPostClones(spec) { | ||
if (spec.unslick || !spec.infinite) { | ||
return 0; | ||
} | ||
return spec.slideCount; | ||
}; | ||
var getTotalSlides = exports.getTotalSlides = function getTotalSlides(spec) { | ||
return spec.slideCount === 1 ? 1 : getPreClones(spec) + spec.slideCount + getPostClones(spec); | ||
}; | ||
var siblingDirection = exports.siblingDirection = function siblingDirection(spec) { | ||
if (spec.targetSlide > spec.currentSlide) { | ||
if (spec.targetSlide > spec.currentSlide + slidesOnRight(spec)) { | ||
return 'left'; | ||
} | ||
return 'right'; | ||
} else { | ||
if (spec.targetSlide < spec.currentSlide - slidesOnLeft(spec)) { | ||
return 'right'; | ||
} | ||
return 'left'; | ||
} | ||
}; | ||
var slidesOnRight = exports.slidesOnRight = function slidesOnRight(_ref) { | ||
var slidesToShow = _ref.slidesToShow, | ||
centerMode = _ref.centerMode, | ||
rtl = _ref.rtl, | ||
centerPadding = _ref.centerPadding; | ||
// returns no of slides on the right of active slide | ||
if (centerMode) { | ||
var right = (slidesToShow - 1) / 2 + 1; | ||
if (parseInt(centerPadding) > 0) right += 1; | ||
if (rtl && slidesToShow % 2 === 0) right += 1; | ||
return right; | ||
} | ||
if (rtl) { | ||
return 0; | ||
} | ||
return slidesToShow - 1; | ||
}; | ||
var slidesOnLeft = exports.slidesOnLeft = function slidesOnLeft(_ref2) { | ||
var slidesToShow = _ref2.slidesToShow, | ||
centerMode = _ref2.centerMode, | ||
rtl = _ref2.rtl, | ||
centerPadding = _ref2.centerPadding; | ||
// returns no of slides on the left of active slide | ||
if (centerMode) { | ||
var left = (slidesToShow - 1) / 2 + 1; | ||
if (parseInt(centerPadding) > 0) left += 1; | ||
if (!rtl && slidesToShow % 2 === 0) left += 1; | ||
return left; | ||
} | ||
if (rtl) { | ||
return slidesToShow - 1; | ||
} | ||
return 0; | ||
}; |
{ | ||
"name": "react-slick", | ||
"version": "0.21.0", | ||
"version": "0.22.0", | ||
"description": " React port of slick carousel", | ||
@@ -83,3 +83,3 @@ "main": "./lib", | ||
"json2mq": "^0.2.0", | ||
"object-assign": "^4.1.0" | ||
"resize-observer-polyfill": "^1.5.0" | ||
}, | ||
@@ -86,0 +86,0 @@ "peerDependencies": { |
@@ -91,21 +91,21 @@ ### react-slick | ||
---------------- | --------------- | ------------------------------- | ----------- | ------- | ||
`accessibility` | `bool` | `true` | Enable tabbing and arrow key navigation | Yes | ||
`asNavFor` | `ref` | `undefined` | provide ref to another slider and sync it with current slider| Yes | ||
`className` | `string` | `''` | CSS class for inner slider div | Yes | ||
`adaptiveHeight` | `bool` | `false` | Adjust the slide's height automatically | Yes | ||
`afterChange` | `func` | `Default` | Index change callback. `index => ...` | Yes | ||
`appendDots` | `func` | `dots => <ul>{dots}</ul>` | Custom dots templates. Works same as customPaging | Yes | ||
`arrows` | `bool` | `true` | | Yes | ||
`nextArrow` | React Element | `null` | React element for next arrow. [Example](examples/CustomArrows.js) | Yes | ||
`prevArrow` | React Element | `null` | React element for prev arrow. [Example](examples/CustomArrows.js) | Yes | ||
`asNavFor` | `ref` | `undefined` | provide ref to another slider and sync it with current slider| Yes | ||
`autoplaySpeed` | `int` | `3000` | Delay between each auto scroll (in milliseconds) | Yes | ||
`autoplay` | `bool` | `false` | | Yes | ||
`autoplaySpeed` | `int` | `3000` | Delay between each auto scroll (in milliseconds) | Yes | ||
`beforeChange` | `func` | `null` | Index change callback. `(oldIndex, newIndex) => ...` | Yes | ||
`centerMode` | `bool` | `false` | Center current slide | Yes | ||
`centerPadding` | `string` | `'50px'` | | Yes | ||
`className` | `string` | `''` | CSS class for inner slider div | Yes | ||
`cssEase` | | `'ease'` | | Yes | ||
`customPaging` | `func` | `i => <button>{i + 1}</button>` | Custom paging templates. [Example](examples/CustomPaging.js)| Yes | ||
`dotsClass` | `string` | `'slick-dots'` | CSS class for dots | Yes | ||
`dots` | `bool` | `Default` | | Yes | ||
`dotsClass` | `string` | `'slick-dots'` | CSS class for dots | Yes | ||
`appendDots` | `func` | `dots => <ul>{dots}</ul>` | Custom dots templates. Works same as customPaging | Yes | ||
`draggable` | `bool` | `true` | Enable scrollable via dragging on desktop | Yes | ||
`easing` | `string` | `'linear'` | | Yes | ||
`edgeEvent` | `func` | `null` | Edge dragged event in finite case, `direction => {...}` | Yes | ||
`fade` | `bool` | `Default` | | Yes | ||
@@ -115,25 +115,28 @@ `focusOnSelect` | `bool` | `false` | Go to slide on click | Yes | ||
`initialSlide` | `int` | `0` | Index of first slide | Yes | ||
`lazyLoad` | `bool` | `false` | Load images or render components on demand | Yes | ||
`lazyLoad` | `ondemand`/`progressive`| `null` | Load images or render components on demand or progressively | Yes | ||
`nextArrow` | React Element | `null` | React element for next arrow. [Example](examples/CustomArrows.js) | Yes | ||
`onEdge` | `func` | `null` | Edge dragged event in finite case, `direction => {...}` | Yes | ||
`onInit` | `func` | `null` | componentWillMount callback. `() => void` | Yes | ||
`onLazyLoad` | `func` | `null` | Callback after slides load lazily `slidesLoaded => {...}` | Yes | ||
`pauseOnHover` | `bool` | `true` | Prevents autoplay while hovering | Yes | ||
`onReInit` | `func` | `null` | componentDidUpdate callback. `() => void` | Yes | ||
`onSwipe` | `func` | `null` | Callback after slide changes by swiping | Yes | ||
`pauseOnDotsHover`| `bool` | `false` | Prevents autoplay while hovering on dots | Yes | ||
`pauseOnFocus` | `bool` | `false` | Prevents autoplay while focused on slides | Yes | ||
`pauseOnHover` | `bool` | `true` | Prevents autoplay while hovering on track | Yes | ||
`prevArrow` | React Element | `null` | React element for prev arrow. [Example](examples/CustomArrows.js) | Yes | ||
`responsive` | `array` | `null` | Customize based on breakpoints (detailed explanation below) | Yes | ||
`rtl` | `bool` | `false` | Reverses the slide order | Yes | ||
`slide` | `string` | `'div'` | Slide container type | Yes | ||
`slidesToScroll` | `int` | `1` | How many slides to scroll at once | Yes | ||
`slidesToShow` | `int` | `1` | How many slides to show in one frame | Yes | ||
`slidesToScroll` | `int` | `1` | How many slides to scroll at once | Yes | ||
`speed` | `int` | `500` | Animation speed in milliseconds | Yes | ||
`swipeToSlide` | `bool` | `false` | Enable drag/swipe irrespective of `slidesToScroll` | Yes | ||
`swipe` | `bool` | `true` | Enable/disable swiping to change slides | Yes | ||
`onSwipe` | `func` | `null` | Callback after slide changes by swiping | Yes | ||
`swipeToSlide` | `bool` | `false` | Enable drag/swipe irrespective of `slidesToScroll` | Yes | ||
`touchMove` | `bool` | `true` | | Yes | ||
`touchThreshold` | `int` | `5` | | Yes | ||
`useCSS` | `bool` | `true` | Enable/Disable CSS Transitions | Yes | ||
`useTransform` | `bool` | `true` | Enable/Disable CSS transforms | Yes | ||
`variableWidth` | `bool` | `false` | | Yes | ||
`useCSS` | `bool` | `true` | Enable/Disable CSS Transitions | Yes | ||
`vertical` | `bool` | `false` | | Yes | ||
`init` | `func` | `null` | componentWillMount callback. `() => void` | Yes | ||
`reInit` | `func` | `null` | componentDidUpdate callback. `() => void` | Yes | ||
`afterChange` | `func` | `Default` | Index change callback. `index => ...` | Yes | ||
`beforeChange` | `func` | `null` | Index change callback. `(oldIndex, newIndex) => ...` | Yes | ||
### Methods | ||
@@ -235,3 +238,3 @@ Name | Arguments | Description | ||
This project exists thanks to all the people who contribute. [[Contribute](CONTRIBUTING.md)]. | ||
<a href="graphs/contributors"><img src="https://opencollective.com/react-slick/contributors.svg?width=890" /></a> | ||
<a href="https://github.com/akiran/react-slick/graphs/contributors"><img src="https://opencollective.com/react-slick/contributors.svg?width=890" /></a> | ||
@@ -238,0 +241,0 @@ |
Sorry, the diff of this file is too big to display
Uses eval
Supply chain riskPackage uses eval() which is a dangerous function. This prevents the code from running in certain environments and increases the risk that the code may contain exploits or malicious behavior.
Found 1 instance in 1 package
SPDX disjunction
LicenseSPDX disjunction for an artifact's license information
Found 1 instance in 1 package
SPDX disjunction
LicenseSPDX disjunction for an artifact's license information
Found 1 instance in 1 package
347922
6877
260
2
+ Addedresize-observer-polyfill@1.5.1(transitive)
- Removedobject-assign@^4.1.0