diff --git a/Gruntfile.js b/Gruntfile.js index 633900b..f007e77 100644 --- a/Gruntfile.js +++ b/Gruntfile.js @@ -47,9 +47,9 @@ module.exports = function ( grunt ) { my_target: { files: [{ expand: true, - cwd: 'bin/v<%= pkg.version %>', + cwd: 'bin/', src: ['<%= pkg.name %>_<%= pkg.version %>.js'], - dest: 'bin/v<%= pkg.version %>/', + dest: 'bin/', rename: function ( dest, src ) { return dest + src.replace( /.js$/, '.min.js' ); } diff --git a/bin/ixSnack_0.4.js b/bin/ixSnack_0.4.js index 5201d3b..b75bf3d 100644 --- a/bin/ixSnack_0.4.js +++ b/bin/ixSnack_0.4.js @@ -1,7 +1,7 @@ /** * ixSnack - Javascript Library (jQuery plugin) * jQuery v1.8~ (http://jquery.com) + ixBand v1.0~ (http://ixband.com) - * @version v0.4.1 (1704130939) + * @version v0.4.2 (1707120928) * The MIT License (MIT), http://ixsnack.com */ ;(function ( $, $B ) { @@ -29,7 +29,7 @@ * Plugin에서 사용하는 공통기능 */ window.ixSnack = { - VERSION: '0.4.1', + VERSION: '0.4.2', MS_POINTER: ( navigator.pointerEnabled || navigator.msPointerEnabled ), TRANSFORM: (function () { if ( !($B.ua.MSIE && $B.ua.DOC_MODE_IE10_LT) ) { @@ -630,7 +630,7 @@ ixSnack.ThumbController = $B.Class.extend({ clear: function () { this._$prevBtn.off( 'click', this._directionHandler ); this._$nextBtn.off( 'click', this._directionHandler ); - this._$thumbs.off( 'click', 'a.ix-btn', this._thumbHandler ); + this._$thumbs.off( 'click', '.ix-btn', this._thumbHandler ); this._$thumbArea.html( this._thumbHtml ); this._$controller.removeClass( 'disabled' ); this._$prevBtn.removeClass( 'disabled' ).removeAttr( 'aria-disabled' ); @@ -666,7 +666,7 @@ ixSnack.ThumbController = $B.Class.extend({ this._$prevBtn.on( 'click', this._directionHandler ); this._$nextBtn.on( 'click', this._directionHandler ); - this._$thumbs.on( 'click', 'a.ix-btn', this._thumbHandler ); + this._$thumbs.on( 'click', '.ix-btn', this._thumbHandler ); }, //좌우화살표 상태 처리 diff --git a/bin/ixSnack_0.4.min.js b/bin/ixSnack_0.4.min.js index 74ba7e5..14184f9 100644 --- a/bin/ixSnack_0.4.min.js +++ b/bin/ixSnack_0.4.min.js @@ -1,9 +1,9 @@ /** * ixSnack - Javascript Library (jQuery plugin) * jQuery v1.8~ (http://jquery.com) + ixBand v1.0~ (http://ixband.com) - * @version v0.4.1 (1704130939) + * @version v0.4.2 (1707120928) * The MIT License (MIT), http://ixsnack.com */ -!function(a,b){"use strict";if(window.ixSnack){console&&(console.warn?console.warn('"ixSnack"\uc774 \uc911\ubcf5 \uc120\uc5b8\ub418\uc5b4 \uc815\uc0c1 \ub3d9\uc791\uc744 \ubcf4\uc7a5\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.'):b.log('"ixSnack"\uc774 \uc911\ubcf5 \uc120\uc5b8\ub418\uc5b4 \uc815\uc0c1 \ub3d9\uc791\uc744 \ubcf4\uc7a5\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.'))}var c=1,d={};window.ixSnack={VERSION:"0.4.1",MS_POINTER:navigator.pointerEnabled||navigator.msPointerEnabled,TRANSFORM:function(){if(!b.ua.MSIE||!b.ua.DOC_MODE_IE10_LT)for(var a="transform WebkitTransform".split(" "),c=0;c-1?(b=[],String(a).replace(/([-\d\.]+|[a-z-]+)([a-z\%]+)?/g,function(a,c,d){b.push({value:ixSnack.parseDataType(c),unit:d||""})})):String(a).replace(/([-\d\.\s]+|[a-z-]+)([a-z\%]+)?/,function(a,c,d){b={value:ixSnack.parseDataType(c),unit:d||""}}),b},parseDataType:function(a){return a&&(a.indexOf("true")>-1?a=Boolean(a):a.indexOf("false")>-1?a=Boolean():/^-*[0-9\.]+$/.test(a)&&(a=Number(a))),a},getOptions:function(a){var c=ixSnack.parseOptions(a),d={axis:c.axis?c.axis.value:"horizontal",loop:!c.loop||c.loop.value,duration:c.duration?c.duration.value:0,autoPlay:!!c.autoPlay&&c.autoPlay.value,delay:c.delay?c.delay.value:4e3,blockClickEvent:!!c.blockClickEvent&&c.blockClickEvent.value,viewLength:c.viewLength?c.viewLength.value:1,motionType:c.motionType?c.motionType.value:"",viewportRatio:c.viewportRatio?c.viewportRatio:null,easing:c.easing?c.easing.value:"ease",itemSize:c.itemSize?c.itemSize:null,itemMargin:c.itemMargin?c.itemMargin:null,defaultIndex:c.defaultIndex?c.defaultIndex.value:0,datumPoint:c.datumPoint?c.datumPoint.value+c.datumPoint.unit:0,opposite:!!c.opposite&&c.opposite.value,paging:!!c.paging&&c.paging.value,correctEndpoint:!!c.correctEndpoint&&c.correctEndpoint.value,includeMargin:!!c.includeMargin&&c.includeMargin.value,bounce:!c.bounce||c.bounce.value,min:c.min?c.min.value:null,max:c.max?c.max.value:null,gap:c.gap?c.gap.value:1,snap:!!c.snap&&c.snap.value,values:c.values?c.values:null,numberFormat:!!c.numberFormat&&c.numberFormat.value,addFirstStr:c.addFirstStr?c.addFirstStr.value:"",addLastStr:c.addLastStr?c.addLastStr.value:"",value:c.value?c.value.value:null,disable:!!c.disable&&c.disable.value,touchDisable:!!c.touchDisable&&c.touchDisable.value,currencyFormat:c.currencyFormat?c.currencyFormat.value:"",numberFixed:c.numberFixed?c.numberFixed.value:0,swipeSensitivity:c.swipeSensitivity?c.swipeSensitivity.value:.5};return d.moveLength=c.moveLength?c.moveLength.value:d.viewLength,d.easing=b.string.camelCase(d.easing),d.paging&&d.loop&&(d.paging=!1),d.numberFormat||(d.currencyFormat=""),d},move:function(a,c,d,e,f,g){if(a.length){var h="";if(ixSnack.TRANSFORM)if(h=b.ua.TOUCH_DEVICE?ixSnack.TRANSFORM+":translate3d("+("horizontal"===d.axis?c+",0":"0,"+c)+",0);":ixSnack.TRANSFORM+":translate"+("horizontal"===d.axis?"X":"Y")+"("+c+");",g)b(a).transition(h,"none"),"function"==typeof e&&e({data:f});else{var i=ixSnack.getCssEasing?ixSnack.getCssEasing(d.easing):d.easing,j=ixSnack.TRANSFORM+" "+d.duration+"ms "+i+";",k="function"==typeof e?setTimeout(function(a){k&&clearTimeout(k),"function"==typeof e&&e({data:f})},2*d.duration):null;setTimeout(function(c){b(a).transition(h,j,{onTransitionEnd:function(a){k&&clearTimeout(k),"function"==typeof e&&e({data:f})}})},0)}else if(h="horizontal"===d.axis?{left:c}:{top:c},g)a.stop().css(h),"function"==typeof e&&e({data:f});else{var i="ease"===d.easing?"swing":d.easing;a.stop().animate(h,d.duration,i,function(){"function"==typeof e&&e({data:f})})}}},moveTo:function(a,b,c,d,e){this.move(a,b,c,d,e,!0)},size:function(a,b,c,d,e,f){var g="horizontal"===c.axis?"width":"height";this.animate(a,g,b,c,d,e,f)},animate:function(a,c,d,e,f,g,h){if(a.length)if(ixSnack.TRANSFORM)if(h)b(a).transition(c+":"+d,"none"),"function"==typeof f&&f({data:g});else{var i=ixSnack.getCssEasing?ixSnack.getCssEasing(e.easing):e.easing,j="function"==typeof f?setTimeout(function(a){j&&clearTimeout(j),"function"==typeof f&&f({data:g})},2*e.duration):null;setTimeout(function(h){b(a).transition(c+":"+d,c+" "+e.duration+"ms "+i+";",{onTransitionEnd:function(a){j&&clearTimeout(j),"function"==typeof f&&f({data:g})}})},0)}else{var k={};if(k[c]=d,h)a.stop().css(k),"function"==typeof f&&f({data:g});else{var i="ease"===e.easing?"swing":e.easing;a.stop().animate(k,e.duration,i,function(){"function"==typeof f&&f({data:g})})}}}},a.fn.extend({ixOptions:function(c){if(b.object.is(c))return this.each(function(b,d){var e=a(d).attr("data-ix-options"),f=e?ixSnack.objToOptions(e,c):ixSnack.objToOptions("",c);a(d).attr("data-ix-options",f).addClass("ix-options-apply")});var d=ixSnack.parseOptions(this.attr("data-ix-options"));if(b.string.is(c)){var e=d[b.string.camelCase(c)];d=e?b.array.is(e)?[e[0].unit?e[0].value+e[0].unit:e[0].value,e[1].unit?e[1].value+e[1].unit:e[1].value]:e.unit?e.value+e.unit:e.value:void 0}return d},ixSlideMax:function(a,b){return ixSnack.setPlugin(this,"slide-max",ixSnack.SlideMax,a,b)},ixSlideLite:function(a,b){return ixSnack.setPlugin(this,"slide-lite",ixSnack.SlideLite,a,b)},ixOverlayList:function(a,b){return ixSnack.setPlugin(this,"overlay-list",ixSnack.OverlayList,a,b)},ixRangeSlider:function(a,b){return ixSnack.setPlugin(this,"range-slider",ixSnack.RangeSlider,a,b)},ixSlider:function(a,b){return ixSnack.setPlugin(this,"slider",ixSnack.Slider,a,b)},ixRatioSize:function(c){return c&&b.object.is(c)&&this.ixOptions(c),this.each(function(b,c){var d,e,f=a(c),g=ixSnack.parseOptions(f.attr("data-ix-options")),h=g.axis?g.axis.value:"horizontal",i=g.controlType?g.controlType.value:"style",j=!1;g.ratio&&("horizontal"===h?(d=f.width(),e=d*(g.ratio[1].value/g.ratio[0].value),d&&("style"!==i&&"all"!==i||f.css("height",e+"px"),"attr"!==i&&"all"!==i||f.attr("height",e),j=!0)):(e=f.height(),d=e*(g.ratio[0].value/g.ratio[1].value),e&&("style"!==i&&"all"!==i||f.css("width",d+"px"),"attr"!==i&&"all"!==i||f.attr("width",d),j=!0)),j&&f.addClass("ix-ratio-size-apply"))})}}),ixSnack.BaseClass=b.Class.extend({getCurrentIndex:function(){return this._selectIdx},getTotalLength:function(){return this._totalLength},getComputedOption:function(a){return b.isString(a)?(a=b.string.camelCase(a),this._options.hasOwnProperty(a)?this._options[a]:void 0):b.object.clone(this._options)},enable:function(){this._swipe&&this._swipe.enable(),this._thumbController&&this._thumbController.enable(),this._disabled=!1},disable:function(){this._swipe&&this._swipe.disable(),this._thumbController&&this._thumbController.disable(),this._disabled=!0}},"ixSnack.BaseClass"),ixSnack.ListIndexManager=b.Class.extend({initialize:function(a,b){this._options=a||{},this._dispatches="object"==typeof b?b:{},this._selectIdx=0,this._originStartIdx=0,this._lastCloneStartIdx=0,this._originLength=this._options.originLength,this._options.loop&&this._originLength>this._options.viewLength&&(this._originStartIdx=this._options.firstCloneLength,this._lastCloneStartIdx=this._originStartIdx+this._originLength);var c=this._originStartIdx;this._options.defaultIndex&&(this._options.loop?(this.correct(this._options.defaultIndex+this._originStartIdx),c=this._selectIdx):c=this._getCorrectIndex(this._options.defaultIndex)),this._dispatch("init",c)},prev:function(a,b){if(!(this._originLength<=this._options.viewLength)){var c=a||this._options.moveLength;this._setNextIndex(-c,b)}},next:function(a,b){if(!(this._originLength<=this._options.viewLength)){var c=a||this._options.moveLength;this._setNextIndex(c,b)}},correct:function(a){if(this._options.loop&&!(this._originLength<=this._options.viewLength)){var b=this._getCorrectType(a);"next"===b?this._dispatch("correct",this._originStartIdx+(a-this._lastCloneStartIdx)):"prev"===b?this._dispatch("correct",this._lastCloneStartIdx-(this._originStartIdx-a)):this._selectIdx=a}},_setNextIndex:function(a,b){var c=this._selectIdx+a;this._options.loop?b&&(c<1?(this._dispatch("correct",this._lastCloneStartIdx-(this._originStartIdx-this._selectIdx)),c=this._selectIdx+a):c>this._options.totalLength-1&&(this._dispatch("correct",this._originStartIdx+(this._selectIdx-this._lastCloneStartIdx)),c=this._selectIdx+a)):c=this._getCorrectIndex(c),this._dispatch("change",c)},_getCorrectIndex:function(a){if(a<0)a=0;else if(a>this._originLength-this._options.viewLength){var b=this._originLength%this._options.viewLength;if(this._options.paging&&b){var c=Math.ceil(this._originLength/this._options.viewLength)-1,d=Math.ceil(a/this._options.viewLength);d>c&&(a=this._originLength-b)}else a=this._originLength-this._options.viewLength}return a},_getCorrectType:function(a){var b="",c=this._options.datumPoint?1:0;return a+2*this._options.viewLength>this._options.totalLength?b="next":a-this._options.viewLength=c&&(b=!0)}else a>=this._originLength-this._options.viewLength&&(b=!0);return b},_dispatch:function(a,c){this._selectIdx=c;var d="on"+b.string.capitalize(a);this._dispatches[d]&&this._dispatches[d].call(this,{type:a,index:c,endpoint:this._getEndpoint(c)})}},"ixSnack.ListIndexManager"),ixSnack.ThumbController=b.Class.extend({initialize:function(a,b){this._$controller=a.find("> .ix-controller"),this._$prevBtn=this._$controller.find(".ix-btn-prev"),this._$nextBtn=this._$controller.find(".ix-btn-next"),this._$thumbArea=this._$controller.find(".ix-thumbs"),this._options=b||{},this._isPrevButtonTag=this._isButtonTag(this._$prevBtn),this._isNextButtonTag=this._isButtonTag(this._$nextBtn),this._thumbHtml="",this._isDisabled=!1,this._isBlock=!1,this._selectIdx=0,this._setThumbs(),this._setEvents(),this._selectThumb(0),this._options.originLength<=this._options.viewLength&&(this._$prevBtn.addClass("disabled").attr("aria-disabled",!0),this._$nextBtn.addClass("disabled").attr("aria-disabled",!0),this._$controller.addClass("disabled"),this._$thumbs.find(".ix-btn").attr("aria-disabled",!0))},setIndex:function(a,b){return this._selectThumb(a),this._setArrowState(b),this},enable:function(){return this._isDisabled=!1,this},disable:function(){return this._isDisabled=!0,this},block:function(a){return"boolean"==typeof a?(this._isBlock=a,this):this._isBlock},clear:function(){this._$prevBtn.off("click",this._directionHandler),this._$nextBtn.off("click",this._directionHandler),this._$thumbs.off("click","a.ix-btn",this._thumbHandler),this._$thumbArea.html(this._thumbHtml),this._$controller.removeClass("disabled"),this._$prevBtn.removeClass("disabled").removeAttr("aria-disabled"),this._$nextBtn.removeClass("disabled").removeAttr("aria-disabled"),this._removeWaiAria()},_selectThumb:function(a){var b=this._options.paging?Math.ceil(a/this._options.viewLength):a;this._$thumbs.removeClass("active").attr("aria-selected",!1).eq(b).addClass("active").attr("aria-selected",!0),this._selectIdx=a},_setEvents:function(){this._directionHandler=b.bind(function(b){b.preventDefault(),a(b.currentTarget).hasClass("disabled")||this._isDisabled||this._isBlock||(a(b.currentTarget).hasClass("ix-btn-prev")?this._dispatch("prev"):this._dispatch("next"))},this),this._thumbHandler=b.bind(function(b){b.preventDefault(),this._isDisabled||this._isBlock||this._dispatch("index",a(b.currentTarget).closest(".ix-thumb").attr("data-idx"))},this),this._$prevBtn.on("click",this._directionHandler),this._$nextBtn.on("click",this._directionHandler),this._$thumbs.on("click","a.ix-btn",this._thumbHandler)},_setArrowState:function(a){this._options.originLength>this._options.viewLength&&!this._options.loop&&(a>0?(this._$prevBtn.removeClass("disabled").attr("aria-disabled",!1),this._isPrevButtonTag&&this._$prevBtn.attr("disabled",!1).prop("disabled",!1)):(this._$prevBtn.addClass("disabled").attr("aria-disabled",!0),this._isPrevButtonTag&&this._$prevBtn.attr("disabled",!0).prop("disabled",!0)),a").append(this._$thumbArea.find("> .ix-thumb")),f=e.html(),g=0;g/gim,g+1);this._$thumbArea.html(c),this._$thumbs=this._$thumbArea.find("> .ix-thumb").each(b.bind(function(b,c){var d=this._options.paging?b*this._options.viewLength:b;a(c).attr("data-idx",d)},this))},_isButtonTag:function(a){var b=!1;if(a.get(0)){var c=a.get(0).nodeName;b=/input/i.test(c)?/button/i.test(a.attr("type")):/button/i.test(c)}return b},_removeWaiAria:function(){this._$thumbs.removeAttr("aria-selected")},_dispatch:function(a,b){this._selectIdx=Number(b),this.dispatch(a,{index:this._selectIdx})}},"ixSnack.ThumbController"),ixSnack.SlideMax=ixSnack.BaseClass.extend({initialize:function(a){this._$target=a,this._$viewport=this._$target.find("> .ix-list-viewport"),this._$ul=this._$viewport.find("> .ix-list-items"),this._options=ixSnack.getOptions(this._$target.attr("data-ix-options")),this._directionType="none",this._selectIdx=0,this._originIdx=-1,this._oldOriginIdx=-1,this._currentPos=0,this._disabled=!1,this._endpoint=!1,this._isTimerBlock=!1,this._getItems(!0),this._setItems(),this._setSize(),this._setAutoPlay(),this._setEvents(),this._options.motionType=this._options.motionType||"slide",this._options.originLength=this._originLength,this._options.totalLength=this._totalLength,this._options.moveLength>this._options.viewLength&&(this._options.moveLength=this._options.viewLength),this._options.duration||(this._options.duration=400),this._thumbController=new ixSnack.ThumbController(this._$target,this._options).addListener("next",b.bind(this._thumbHandler,this)).addListener("prev",b.bind(this._thumbHandler,this)).addListener("index",b.bind(this._thumbHandler,this)),this._listIndexManager=new ixSnack.ListIndexManager(this._options,{onChange:b.bind(this._listIndexEventHandler,this),onCorrect:b.bind(this._listIndexEventHandler,this),onInit:b.bind(this._listIndexEventHandler,this)}),this._dispatch("init")},startTimer:function(){this._disabled||(this._isTimerBlock=!1,this._playTimer())},stopTimer:function(){this._isTimerBlock=!0,this._pauseTimer()},changeIndex:function(a){this._selectOriginIdx(a)},next:function(a,b){this._disabled||this._thumbController.block()||(this._directionType="next",this._listIndexManager.next(a,b))},prev:function(a,b){this._disabled||this._thumbController.block()||(this._directionType="prev",this._listIndexManager.prev(a,b))},clear:function(){this._directionType="none",this._pauseTimer(),this._removeEvents(),this._removeSize(),this._$ul.stop(),this._$items.removeAttr("data-origin-idx").removeAttr("data-idx"),this._$cloneItems&&this._$cloneItems.remove(),ixSnack.removePlugin(this._$target,"slide-max"),this._removeWaiAria()},resize:function(){this._pauseTimer(),this._removeSize(),this._setSize(),this._moveItems(this._selectIdx,"none",!0,!0)},_thumbHandler:function(a){switch(a.type){case"next":this.next();break;case"prev":this.prev();break;case"index":this.changeIndex(a.index)}},_listIndexEventHandler:function(a){switch(a.type){case"change":this._dispatch("slideStart"),this._endpoint=a.endpoint,this._originIdx=Number(this._$items.eq(a.index).attr("data-origin-idx")),this._moveItems(a.index,this._options.motionType);break;case"correct":this._moveItems(a.index,"none",!0);break;case"init":this._endpoint=a.endpoint,this._originIdx=Number(this._$items.eq(a.index).attr("data-origin-idx")),this._moveItems(a.index,"none",!1,!0)}},_getItems:function(a){this._$items=this._$ul.find("> .ix-list-item"),this._totalLength=this._$items.length,a&&(this._originLength=this._totalLength)},_setItems:function(){this._totalLength&&(this._$items.each(function(b,c){a(c).attr("data-origin-idx",b)}),this._options.loop&&this._originLength>this._options.viewLength&&(this._cloneItems(),this._getItems()),this._$items.each(function(b,c){a(c).attr("data-idx",b).attr("aria-hidden",!0)}))},_cloneItems:function(){var a=this._$items.slice(this._totalLength-this._options.viewLength-1,this._totalLength).clone(),b=this._$items.slice(0,this._options.viewLength+1).clone();a.length&&a.insertBefore(this._$items.eq(0)),b.length&&this._$ul.append(b),this._options.firstCloneLength=a.length,this._$cloneItems=a.add(b),this._$cloneItems.addClass("ix-clone")},_setEvents:function(){!this._options.touchDisable&&b.ua.TOUCH_DEVICE&&this._totalLength>this._options.viewLength&&(this._swipe=new b.event.Swipe(this._$viewport.get(0),{axis:this._options.axis,preventDefault:"vertical"===this._options.axis&&b.ua.SAFARI&&parseFloat(b.ua.VERSION)>9}).sensitivity(this._options.swipeSensitivity).addListener("axis",b.bind(function(a){this._thumbController.block()||(this._pauseTimer(),this._dispatch("touchStart"))},this)).addListener("move",b.bind(function(a){this._thumbController.block()||"slide"===this._options.motionType&&this._touchMove(a)},this)).addListener("swipe",b.bind(function(a){if(!this._thumbController.block()){if(this._dispatch("touchEnd"),0===("horizontal"===this._options.axis?a.moveX:a.moveY))return void this._playTimer();this._targetSwipe(a.swipe)}},this))),this._mouseHandler=b.bind(function(a){"mouseover"===a.type?this._pauseTimer():this._playTimer()},this),this._options.autoPlay&&!b.ua.TOUCH_DEVICE&&this._$target.on("mouseover mouseout",this._mouseHandler)},_touchMove:function(a){var b="horizontal"===this._options.axis?a.growX:a.growY,c=this._isOverPosition(b+this._currentPos),d=c?.3*b+this._currentPos:b+this._currentPos;(c&&this._options.bounce||!c)&&(ixSnack.moveTo(this._$ul,d+"px",this._options),this._currentPos=d)},_targetSwipe:function(a){"left"===a||"up"===a?this.next():"right"===a||"down"===a?this.prev():(this._dispatch("slideStart"),this._moveItems(this._selectIdx,this._options.motionType))},_isOverPosition:function(a){var b=!1,c=0;return this._options.loop||(c=this._options.paging&&this._options.viewLength>1?this._indexToPosition(this._options.viewLength*Math.floor(this._totalLength/this._options.viewLength)):this._options.correctEndpoint?-(this._totalLength*this._itemSize-this._viewportSize):this._indexToPosition(this._totalLength-this._options.viewLength),a>0?b=!0:a=c&&bthis._options.viewLength&&this._options.correctEndpoint&&!this._options.loop&&!this._options.paging&&this._endpoint){(this._totalLength-b)*this._itemSizethis._options.viewLength&&(e[c[0]]=this._options.datumPoint),this._$items.css(d),this._$ul.css(e),this._viewportSize=this._$viewport[b]()}},_getViewportHeight:function(){return b(this._$viewport.get(0)).rect().width*(this._options.viewportRatio[1].value/this._options.viewportRatio[0].value)},_selectOriginIdx:function(a){a>this._originLength||a<0||(this._originIdxa&&this.prev(this._originIdx-a,!0))},_getItemMargins:function(){var b=[];if(this._options.itemMargin)b=[this._options.itemMargin[0].value,this._options.itemMargin[1].value];else{var c=this._$items.css("horizontal"===this._options.axis?["marginLeft","marginRight"]:["marginTop","marginBottom"]);a.each(c,function(a,c){b.push(parseFloat(c))})}return b},_getItemSize:function(){if(this._options.itemSize)return this._options.itemSize.value;var a="horizontal"===this._options.axis?"width":"height";return b(this._$items.get(0)).rect()[a]},_removeSize:function(){this._$viewport.attr("style",""),this._$ul.attr("style",""),this._$items.attr("style","")},_playTimer:function(){!this._isTimerBlock&&this._timer&&this._timer.reset().start()},_pauseTimer:function(){this._timer&&this._timer.stop()},_dispatch:function(a){var b="init change slideEnd".indexOf(a)>-1?this._endpoint:void 0;this._$target.triggerHandler({type:"ixSlideMax:"+a,currentIndex:this._originIdx,totalLength:this._originLength,endpoint:b,direction:this._directionType})}},"ixSnack.SlideMax"),ixSnack.SlideLite=ixSnack.BaseClass.extend({initialize:function(a){this._$target=a,this._$viewport=this._$target.find("> .ix-list-viewport"),this._$ul=this._$viewport.find("> .ix-list-items"),this._options=ixSnack.getOptions(this._$target.attr("data-ix-options")),this._selectIdx=0,this._disabled=!1,this._isTimerBlock=!1,this._currentPos=0,this._directionType="none",this._getItems(),this._setItems(),this._setSize(),this._setAutoPlay(),this._setEvents(),this._options.motionType=this._options.motionType||"slide",this._options.originLength=this._totalLength,this._options.totalLength=this._totalLength,this._totalLength<3&&(this._options.loop=!1),(this._options.defaultIndex>=this._totalLength||this._options.defaultIndex<0)&&(this._options.defaultIndex=0),this._options.duration||(this._options.duration=400),this._thumbController=new ixSnack.ThumbController(this._$target,this._options).setIndex(this._options.defaultIndex,this._options.defaultIndex).addListener("next",b.bind(this._thumbHandler,this)).addListener("prev",b.bind(this._thumbHandler,this)).addListener("index",b.bind(this._thumbHandler,this)),this._arrangeItems(this._options.defaultIndex),this._selectIdx=this._centerIdx,this._dispatch("init")},startTimer:function(){this._disabled||(this._isTimerBlock=!1,this._playTimer())},stopTimer:function(){this._isTimerBlock=!0,this._pauseTimer()},changeIndex:function(a){a>this._totalLength||a<0||!this._totalLength||(this._selectIdxa&&this.prev(a))},next:function(a,b){this._disabled||this._thumbController.block()||!this._totalLength||(this._directionType="next",this._selectMove(this._selectIdx+1,a,"next",b))},prev:function(a,b){this._disabled||this._thumbController.block()||!this._totalLength||(this._directionType="prev",this._selectMove(this._selectIdx-1,a,"prev",b))},resize:function(){this._totalLength&&(this._pauseTimer(),this._removeSize(),this._setSize(),this._arrangeItems(this._selectIdx),this._playTimer())},clear:function(){this._directionType="none",this._pauseTimer(),this._removeEvents(),this._removeStyle(),this._$ul.stop(),this._$items.removeAttr("data-origin-idx").removeAttr("data-idx"),ixSnack.removePlugin(this._$target,"slide-lite"),this._removeWaiAria()},_thumbHandler:function(a){switch(a.type){case"next":this.next();break;case"prev":this.prev();break;case"index":this.changeIndex(a.index)}},_setEvents:function(){!this._options.touchDisable&&b.ua.TOUCH_DEVICE&&this._totalLength>1&&(this._swipe=new b.event.Swipe(this._$viewport.get(0),{axis:this._options.axis,preventDefault:"vertical"===this._options.axis&&b.ua.SAFARI&&parseFloat(b.ua.VERSION)>9}).sensitivity(this._options.swipeSensitivity).addListener("axis",b.bind(function(a){this._thumbController.block()||(this._pauseTimer(),this._dispatch("touchStart"))},this)).addListener("move",b.bind(function(a){this._thumbController.block()||"slide"===this._options.motionType&&this._touchMove(a)},this)).addListener("swipe",b.bind(function(a){if(!this._thumbController.block()){if(this._dispatch("touchEnd"),0===("horizontal"===this._options.axis?a.moveX:a.moveY))return void this._playTimer();this._targetSwipe(a.swipe)}},this))),this._mouseHandler=b.bind(function(a){"mouseover"===a.type?this._pauseTimer():this._playTimer()},this),this._options.autoPlay&&!b.ua.TOUCH_DEVICE&&this._$target.on("mouseover mouseout",this._mouseHandler)},_touchMove:function(a){var b="horizontal"===this._options.axis?a.growX:a.growY,c=this._isOverPosition(b+this._currentPos),d=c?.3*b+this._currentPos:b+this._currentPos;(c&&this._options.bounce||!c)&&(ixSnack.moveTo(this._$ul,d+"px",this._options),this._currentPos=d),this._dispatch("touchMove")},_targetSwipe:function(a){"left"===a||"up"===a?this.next():"right"===a||"down"===a?this.prev():(this._dispatch("slideStart"),this._moveItems(this._selectIdx,"none",this._options.motionType))},_isOverPosition:function(a){var b=!1;return this._options.loop||(this._selectIdx<=0&&a>-this._itemSize?b=!0:this._selectIdx>=this._totalLength-1&&a<-this._itemSize&&(b=!0)),b},_selectMove:function(a,b,c){"number"==typeof b&&a!==b&&(this._arrangeItems(b,c),a=b),a=this._correctSelectIdx(a),a===this._selectIdx&&(c="none"),this._dispatch("slideStart"),this._moveItems(a,c,this._options.motionType)},_correctSelectIdx:function(a){return a>this._totalLength-1?a=this._options.loop?0:this._totalLength-1:a<0&&(a=this._options.loop?this._totalLength-1:0),a},_arrangeItems:function(a,b){var c=this._getCenterIdx(a,b),d=this._getPrevIdx(a,b),e=this._getNextIdx(a,b),f="horizontal"===this._options.axis?"left":"top";d>-1&&this._$items.eq(d).css(f,"0px").show().attr("aria-hidden",!0),this._$items.eq(c).css(f,this._itemSize+"px").show().attr("aria-hidden",!1),e>-1&&this._$items.eq(e).css(f,2*this._itemSize+"px").show().attr("aria-hidden",!0),this._$items.filter(function(a){return d!==a&&e!==a&&c!==a}).hide().attr("aria-hidden",!0),ixSnack.moveTo(this._$ul,-this._itemSize+"px",this._options),this._currentPos=-this._itemSize,this._centerIdx=c,this._prevIdx=d,this._nextIdx=e},_moveItems:function(a,c,d,e){a=this._correctSelectIdx(a);var f=-this._itemSize;this._pauseTimer(),this._thumbController.block(!0).setIndex(a,a),"next"===c?f=-(2*this._itemSize):"prev"===c&&(f=0),"slide"===d?ixSnack.move(this._$ul,f+"px",this._options,b.bind(this._moveComplete,this),{idx:a,isSilent:e}):ixSnack.moveTo(this._$ul,f+"px",this._options,b.bind(this._moveComplete,this),{idx:a,isSilent:e}),this._currentPos=f},_moveComplete:function(a){var b=this._selectIdx;this._thumbController.block(!1),this._playTimer(),this._selectIdx=a.data.idx,this._arrangeItems(this._selectIdx),a.data.isSilent||(b!==this._selectIdx&&this._dispatch("change"),this._dispatch("slideEnd"),this._directionType="none")},_isEndpoint:function(){return!this._options.loop&&this._selectIdx===this._totalLength-1},_getPrevIdx:function(a,b){var c=b?"next"===b?-1:a:a-1;return"next"===b?c:this._options.loop?this._correctSelectIdx(c):c},_getNextIdx:function(a,b){var c=b?"prev"===b?-1:a:a+1;return"prev"===b?c:this._options.loop?this._correctSelectIdx(c):c},_getCenterIdx:function(a,b){return b?this._selectIdx:a},_setAutoPlay:function(){!this._options.autoPlay||this._totalLength<2||(this._timer=new b.utils.Timer(this._options.delay,this._totalLength).addListener("timer",b.bind(function(a){this._options.opposite?this.prev():this.next()},this)).addListener("complete",b.bind(function(a){this._playTimer()},this)).start())},_setSize:function(){if(this._options.viewportRatio&&this._$viewport.css("height",this._getViewportHeight()+"px"),this._totalLength){var a,b,c={},d={},e=this._getItemMargins(),f=e[0]+e[1];this._itemSize=this._getItemSize(),this._options.includeMargin||(this._itemSize+=f),"horizontal"===this._options.axis?(a="width",b=["marginLeft","marginRight"]):(a="height",b=["marginTop","marginBottom"]),d[a]=3*this._itemSize+100+"px",c[a]=this._itemSize-f+"px",c[b[0]]=e[0]+"px",c[b[1]]=e[1]+"px",this._$items.css(c),this._$ul.css(d)}},_getItemMargins:function(){var b=[];if(this._options.itemMargin)b=[this._options.itemMargin[0].value,this._options.itemMargin[1].value];else{var c=this._$items.css("horizontal"===this._options.axis?["marginLeft","marginRight"]:["marginTop","marginBottom"]);a.each(c,function(a,c){b.push(parseFloat(c))})}return b},_getViewportHeight:function(){return b(this._$viewport.get(0)).rect().width*(this._options.viewportRatio[1].value/this._options.viewportRatio[0].value)},_getItemSize:function(){if(this._options.itemSize)return this._options.itemSize.value;var a="horizontal"===this._options.axis?"width":"height";return b(this._$items.get(this._selectIdx)).rect()[a]},_removeSize:function(){var a="horizontal"===this._options.axis?"width":"height";this._$viewport.attr("style",""),this._$ul.css(a,""),this._$items.css(a,"").css("margin","")},_removeStyle:function(){this._$viewport.attr("style",""),this._$ul.attr("style",""),this._$items.attr("style","")},_removeEvents:function(){this._$target.off("mouseover mouseout",this._mouseHandler),this._thumbController.clear(),this._swipe&&this._swipe.clear()},_getItems:function(){this._$items=this._$ul.find("> .ix-list-item"),this._totalLength=this._$items.length},_setItems:function(){this._$items.each(function(b,c){a(c).attr("data-idx",b).attr("aria-hidden",!0) -}).css({position:"absolute"})},_removeWaiAria:function(){this._$items.removeAttr("aria-hidden")},_playTimer:function(){!this._isTimerBlock&&this._timer&&this._timer.reset().start()},_pauseTimer:function(){this._timer&&this._timer.stop()},_displacement:function(a){var b=0;return"change"===a||"slideEnd"===a?"next"===this._directionType?b=-1:"prev"===this._directionType&&(b=1):(b=1+this._currentPos/this._itemSize,b<-1?b=-1:b>1&&(b=1)),b},_dispatch:function(a){var b="init change slideEnd".indexOf(a)>-1?this._isEndpoint():void 0,c=this._selectIdx,d=this._displacement(a);this._totalLength||(c=NaN),this._$target.triggerHandler({type:"ixSlideLite:"+a,currentIndex:c,totalLength:this._totalLength,endpoint:b,direction:this._directionType,displacement:d})}},"ixSnack.SlideLite"),ixSnack.OverlayList=ixSnack.BaseClass.extend({initialize:function(a){this._$target=a,this._$viewport=this._$target.find("> .ix-list-viewport"),this._$ul=this._$viewport.find("> .ix-list-items"),this._options=ixSnack.getOptions(this._$target.attr("data-ix-options")),this._selectIdx=0,this._disabled=!1,this._isTimerBlock=!1,this._directionType="none",this._currentPos=0,this._getItems(),this._setItems(),this._setSize(),this._setAutoPlay(),this._setEvents(),this._options.motionType=this._options.motionType||"overlay",this._options.originLength=this._totalLength,this._options.totalLength=this._totalLength,(this._options.defaultIndex>=this._totalLength||this._options.defaultIndex<0)&&(this._options.defaultIndex=0),this._options.duration||(this._options.duration=400),"slide"===this._options.motionType&&this._totalLength<3&&(this._options.loop=!1),this._motion=this._getMotion().addListener("motionMove",b.bind(function(a){this._dispatch("touchMove")},this)).addListener("motionEnd",b.bind(this._motionHandler,this)),this._thumbController=new ixSnack.ThumbController(this._$target,this._options).setIndex(this._options.defaultIndex,this._options.defaultIndex).addListener("next",b.bind(this._thumbHandler,this)).addListener("prev",b.bind(this._thumbHandler,this)).addListener("index",b.bind(this._thumbHandler,this)),this._dispatch("init")},startTimer:function(){this._disabled||(this._isTimerBlock=!1,this._playTimer())},stopTimer:function(){this._isTimerBlock=!0,this._pauseTimer()},changeIndex:function(a){a>this._totalLength||a<0||!this._totalLength||(this._selectIdxa&&this.prev(a,"changeIndex"))},next:function(a,b){if(!this._disabled&&!this._thumbController.block()&&this._totalLength){var c=this._motion.correctSelectIdx("number"==typeof a?a:this._selectIdx+1);this._selectIdx!=c&&(this._directionType="next",this._dispatch("slideStart"),this._pauseTimer(),this._thumbController.block(!0).setIndex(c,c),this._motion.next(c,"changeIndex"===b))}},prev:function(a,b){if(!this._disabled&&!this._thumbController.block()&&this._totalLength){var c=this._motion.correctSelectIdx("number"==typeof a?a:this._selectIdx-1);this._selectIdx!=c&&(this._directionType="prev",this._dispatch("slideStart"),this._pauseTimer(),this._thumbController.block(!0).setIndex(c,c),this._motion.prev(c,"changeIndex"===b))}},clear:function(){this._directionType="none",this._pauseTimer(),this._removeEvents(),this._removeStyle(),this._$items.removeAttr("data-origin-idx").removeAttr("data-idx"),ixSnack.removePlugin(this._$target,"overlay-list"),this._removeWaiAria()},resize:function(){this._totalLength&&(this._pauseTimer(),this._removeSize(),this._motion.resize(),this._setSize(),this._playTimer())},_motionHandler:function(a){var b=this._selectIdx;this._thumbController.block(!1),this._playTimer(),this._selectIdx=a.idx,a.isSilent||(b!==this._selectIdx&&this._dispatch("change"),this._dispatch("slideEnd"),this._directionType="none")},_thumbHandler:function(a){switch(a.type){case"next":this.next();break;case"prev":this.prev();break;case"index":this.changeIndex(a.index)}},_getMotion:function(){var a;switch(this._options.motionType){case"overlay":a=new ixSnack.OverlayList.OverlayMotion(this._$target,this._$ul,this._$items,this._options);break;case"slide":a=new ixSnack.OverlayList.SlideMotion(this._$target,this._$ul,this._$items,this._options);break;case"mask":a=new ixSnack.OverlayList.MaskMotion(this._$target,this._$ul,this._$items,this._options);break;default:a=new ixSnack.OverlayList.Motion(this._$target,this._$ul,this._$items,this._options)}return a},_removeSize:function(){var a="horizontal"===this._options.axis?"width":"height";this._$viewport.attr("style",""),this._$ul.css(a,""),this._$items.css(a,"").css("margin","")},_getItems:function(){this._$items=this._$ul.find("> .ix-list-item"),this._totalLength=this._$items.length},_setItems:function(){this._$items.each(function(b,c){a(c).attr("data-idx",b)}),"mask"!==this._options.motionType&&this._$items.css({position:"absolute"})},_setAutoPlay:function(){!this._options.autoPlay||this._totalLength<2||(this._timer=new b.utils.Timer(this._options.delay,this._totalLength).addListener("timer",b.bind(function(a){this._options.opposite?this.prev():this.next()},this)).addListener("complete",b.bind(function(a){this._playTimer()},this)).start())},_setEvents:function(){var a="horizontal"===this._options.axis?"moveX":"moveY";!this._options.touchDisable&&b.ua.TOUCH_DEVICE&&this._totalLength>1&&(this._swipe=new b.event.Swipe(this._$viewport.get(0),{axis:this._options.axis,preventDefault:"vertical"===this._options.axis&&b.ua.SAFARI&&parseFloat(b.ua.VERSION)>9}).sensitivity(this._options.swipeSensitivity).addListener("axis",b.bind(function(a){this._thumbController.block()||(this._pauseTimer(),this._dispatch("touchStart"))},this)).addListener("move",b.bind(function(a){this._thumbController.block()||this._motion.move(a)},this)).addListener("swipe",b.bind(function(b){if(!this._thumbController.block()){if(this._dispatch("touchEnd"),0===b[a])return void this._playTimer();this._targetSwipe(b.swipe)}},this))),this._mouseHandler=b.bind(function(a){"mouseover"===a.type?this._pauseTimer():this._playTimer()},this),this._options.autoPlay&&!b.ua.TOUCH_DEVICE&&this._$target.on("mouseover mouseout",this._mouseHandler)},_targetSwipe:function(a){"left"===a||"up"===a?this.next():"right"===a||"down"===a?this.prev():(this._dispatch("slideStart"),this._pauseTimer(),this._thumbController.block(!0),this._motion.none())},_removeWaiAria:function(){this._$items.removeAttr("aria-hidden")},_setSize:function(){this._options.viewportRatio&&this._$viewport.css("height",this._getViewportHeight()+"px")},_getViewportHeight:function(){return b(this._$viewport.get(0)).rect().width*(this._options.viewportRatio[1].value/this._options.viewportRatio[0].value)},_removeStyle:function(){this._$viewport.attr("style",""),this._$items.attr("style","")},_removeEvents:function(){this._$target.off("mouseover mouseout",this._mouseHandler),this._thumbController.clear(),this._swipe&&this._swipe.clear(),this._motion&&this._motion.clear()},_playTimer:function(){!this._isTimerBlock&&this._timer&&this._timer.reset().start()},_pauseTimer:function(){this._timer&&this._timer.stop()},_dispatch:function(a){var b="init change slideEnd".indexOf(a)>-1?this._motion.isEndpoint():void 0,c=this._selectIdx;this._totalLength||(c=NaN),this._$target.triggerHandler({type:"ixOverlayList:"+a,currentIndex:c,totalLength:this._totalLength,endpoint:b,direction:this._directionType,displacement:this._motion.displacement()})}},"ixSnack.OverlayList"),ixSnack.OverlayList.Motion=b.Class.extend({initialize:function(a,b,c,d){this._$target=a,this._$ul=b,this._$items=c,this._options=d,this._totalLength=this._$items.length,this._selectIdx=this._options.defaultIndex,this._overlayItem(this._selectIdx,!0)},resize:function(){},displacement:function(){return 0},none:function(){this.dispatch("motionEnd",{idx:this._selectIdx,isSilent:!1})},move:function(a){},next:function(a){this._overlayItem(a)},prev:function(a){this._overlayItem(a)},isEndpoint:function(){return!this._options.loop&&this._selectIdx===this._totalLength-1},isFirstpoint:function(){return!this._options.loop&&0===this._selectIdx},correctSelectIdx:function(a){return a>this._totalLength-1?a=this._options.loop?0:this._totalLength-1:a<0&&(a=this._options.loop?this._totalLength-1:0),a},clear:function(){this.removeListener()},_isOverPosition:function(a){var b=!1;return this._options.loop||(a>0&&this._selectIdx<=0?b=!0:a<0&&this._selectIdx>=this._totalLength-1&&(b=!0)),b},_overlayItem:function(a,c,d){if(d){var e=this._$items.eq(a).show();ixSnack.animate(e,"opacity",0,this._options,null,null,!0),this._$ul.append(e),ixSnack.animate(e,"opacity",1,this._options,b.bind(this._overlayComplete,this),{idx:a,isSilent:c})}else this._$items.hide().eq(a).show(),this._overlayComplete({data:{idx:a,isSilent:c}})},_overlayComplete:function(a){this._setWaiArea(a.data.idx),this._selectIdx=a.data.idx,this.dispatch("motionEnd",{idx:a.data.idx,isSilent:a.data.isSilent})},_getItemSize:function(){if(this._options.itemSize)return this._options.itemSize.value;var a="horizontal"===this._options.axis?"width":"height";return b(this._$items.get(this._selectIdx)).rect()[a]},_getItemMargins:function(){var b=[];if(this._options.itemMargin)b=[this._options.itemMargin[0].value,this._options.itemMargin[1].value];else{var c=this._$items.css("horizontal"===this._options.axis?["marginLeft","marginRight"]:["marginTop","marginBottom"]);a.each(c,function(a,c){b.push(parseFloat(c))})}return b},_setWaiArea:function(a){this._$items.attr("aria-hidden",!0).eq(a).attr("aria-hidden",!1)}},"ixSnack.OverlayList.Motion"),ixSnack.OverlayList.OverlayMotion=ixSnack.OverlayList.Motion.extend({initialize:function(a,b,c,d){this._$target=a,this._$ul=b,this._$items=c,this._options=d,this._totalLength=this._$items.length,this._selectIdx=this._options.defaultIndex,this._overlayItem(this._selectIdx,!0,!1)},next:function(a){this._overlayItem(a,!1,!0)},prev:function(a){this._overlayItem(a,!1,!0)}},"ixSnack.OverlayList.OverlayMotion"),ixSnack.OverlayList.SlideMotion=ixSnack.OverlayList.Motion.extend({initialize:function(a,b,c,d){this._$target=a,this._$ul=b,this._$items=c,this._options=d,this._totalLength=this._$items.length,this._selectIdx=this._options.defaultIndex,this._currentPos=0,this._growProp="horizontal"===this._options.axis?"growX":"growY",this._setSize(),this._arrangeItems(this._selectIdx),this._setWaiArea(this._selectIdx)},next:function(a,b){b&&!this._isGradualIndex(a)&&this._arrangeItems(a,"next"),this._overlayItem(a,"next")},prev:function(a,b){b&&!this._isGradualIndex(a)&&this._arrangeItems(a,"prev"),this._overlayItem(a,"prev")},none:function(){this._overlayItem(this._selectIdx,"none")},move:function(a){this._touchMove(a[this._growProp])},displacement:function(){return this._currentPos/this._itemSize},resize:function(){this._setSize(),this._arrangeItems(this._selectIdx)},_overlayItem:function(a,c){a=this.correctSelectIdx(a);var d,e,f=0,g={idx:a,isSilent:!1,moveType:c},h=b.bind(this._overlayComplete,this);"next"===c?(f=-this._itemSize,d=h):"prev"===c?(f=this._itemSize,e=h):this._options.loop||0!==this._selectIdx?e=h:d=h,this._prevIdx>-1&&ixSnack.move(this._$prev,f+"px",this._options,e,g),this._nextIdx>-1&&ixSnack.move(this._$next,f+"px",this._options,d,g),this._currentPos=f},_overlayComplete:function(a){"none"!==a.data.moveType&&this._arrangeItems(a.data.idx),ixSnack.OverlayList.Motion.prototype._overlayComplete.call(this,a),this._currentPos=0},_touchMove:function(a){var b=a+this._currentPos;-this._itemSize>b?b=-this._itemSize:this._itemSize-1&&this._$ul.append(this._$prev.css(f,"0px").show()),this._$center.css(f,this._itemSize+"px").show(),e>-1&&this._$ul.append(this._$next.css(f,2*this._itemSize+"px").show()),ixSnack.moveTo(this._$prev,"0px",this._options),ixSnack.moveTo(this._$center,"0px",this._options),ixSnack.moveTo(this._$next,"0px",this._options),this._$items.filter(function(a){return d!==a&&e!==a&&c!==a}).hide(),this._$ul.css(f,-this._itemSize+"px"),this._centerIdx=c,this._prevIdx=d,this._nextIdx=e},_getPrevIdx:function(a,b){var c=b?"next"===b?-1:a:a-1;return"next"===b?c:this._options.loop?this.correctSelectIdx(c):c},_getNextIdx:function(a,b){var c=b?"prev"===b?-1:a:a+1;return"prev"===b?c:this._options.loop?this.correctSelectIdx(c):c},_getCenterIdx:function(a,b){return b?this._selectIdx:a},_isGradualIndex:function(a){return 1===Math.abs(a-this._selectIdx)},_setSize:function(){if(this._totalLength){var a,b,c={},d={},e=this._getItemMargins(),f=e[0]+e[1];this._itemSize=this._getItemSize(),this._options.includeMargin||(this._itemSize+=f),"horizontal"===this._options.axis?(a="width",b=["marginLeft","marginRight"]):(a="height",b=["marginTop","marginBottom"]),d[a]=3*this._itemSize+100+"px",c[a]=this._itemSize-f+"px",c[b[0]]=e[0]+"px",c[b[1]]=e[1]+"px",this._$items.css(c),this._$ul.css(d)}}},"ixSnack.OverlayList.SlideMotion"),ixSnack.OverlayList.MaskMotion=ixSnack.OverlayList.Motion.extend({initialize:function(a,b,c,d){this._$target=a,this._$ul=b,this._$items=c,this._options=d,this._totalLength=this._$items.length,this._selectIdx=this._options.defaultIndex,this._currentPos=0,this._positionProp="horizontal"===this._options.axis?"right":"bottom",this._growProp="horizontal"===this._options.axis?"growX":"growY",this._setSize(),this._arrangeItems(this._selectIdx),this._setWaiArea(this._selectIdx)},next:function(a,b){b&&!this._isGradualIndex(a)&&this._arrangeItems(a,"next"),this._overlayItem(a,"next")},prev:function(a,b){b&&!this._isGradualIndex(a)&&this._arrangeItems(a,"prev"),this._overlayItem(a,"prev")},none:function(){this._overlayItem(this._selectIdx,"none")},move:function(a){this._touchMove(a[this._growProp])},displacement:function(){return this._currentPos/this._itemSize},resize:function(){this._$items.children().css({width:"",height:""}),this._setSize(),this._arrangeItems(this._selectIdx)},clear:function(){ixSnack.OverlayList.Motion.prototype.clear.call(this),this._$items.children().css({right:"",bottom:"",width:"",height:""})},_overlayItem:function(a,c){a=this.correctSelectIdx(a);var d=0,e={idx:a,isSilent:!1,moveType:c},f=b.bind(this._overlayComplete,this);"next"===c?d=-this._itemSize:"prev"===c&&(d=this._itemSize),this._size(d,f,e,!0)},_overlayComplete:function(a){"none"!==a.data.moveType&&this._arrangeItems(a.data.idx),ixSnack.OverlayList.Motion.prototype._overlayComplete.call(this,a),this._currentPos=0},_touchMove:function(a){var b=a+this._currentPos;-this._itemSize>b?b=-this._itemSize:this._itemSize-1&&ixSnack.size(this._$prev,e,this._options,j,c,l),ixSnack.size(this._$center,f,this._options,i,c,l),this._nextIdx>-1&&ixSnack.size(this._$next,g,this._options,h,c,l),this._currentPos=a},_correctPercent:function(a){return a<0?a=0:a>100&&(a=100),a},_arrangeItems:function(c,d){var e=this._getPrevIdx(c,d),f=this._getCenterIdx(c,d),g=this._getNextIdx(c,d);this._$prev=this._$items.eq(e),this._$center=this._$items.eq(f),this._$next=this._$items.eq(g),this._$items.each(b.bind(function(b,c){if(e!==b||g!==b||f!==b){var d=a(c).hide();ixSnack.size(d,"100%",this._options,null,null,!0)}},this)),e>-1&&this._setActiveItem(this._$prev,"close"),this._setActiveItem(this._$center,"open"),g>-1&&this._setActiveItem(this._$next,"close"),this._prevIdx=e,this._centerIdx=f,this._nextIdx=g},_setActiveItem:function(a,b){ixSnack.size(a,"open"===b?"100%":"0%",this._options,null,null,!0),this._$ul.append(a),a.show()},_setChildrenStyle:function(a,b,c){var d={};c<0?d[this._positionProp]="next"===b?0:"":c>0&&(d[this._positionProp]="prev"===b?"":0),a.children().css(d)},_getPrevIdx:function(a,b){var c=b?"next"===b?-1:a:a-1;return"next"===b?c:this._options.loop?this.correctSelectIdx(c):c},_getNextIdx:function(a,b){var c=b?"prev"===b?-1:a:a+1;return"prev"===b?c:this._options.loop?this.correctSelectIdx(c):c},_getCenterIdx:function(a,b){return b?this._selectIdx:a},_isGradualIndex:function(a){return 1===Math.abs(a-this._selectIdx)},_getChildrenSize:function(){var a;return a="horizontal"===this._options.axis?"outerWidth":"outerHeight",this._$items.eq(this._selectIdx).children()[a]()},_setSize:function(){if(this._totalLength){var a,b={};this._itemSize=this._getItemSize(),a="horizontal"===this._options.axis?"width":"height",b[a]=this._getChildrenSize()+"px",this._$items.children().css(b)}}},"ixSnack.OverlayList.MaskMotion"),ixSnack.BaseSlider=b.Class.extend({initialize:function(a,b,c){this._$icon=a,this._$input=b,this._options=c||{},this._disabled=!1,this._offsetProp="horizontal"===this._options.axis?"left":"top"},setEvents:function(){return this._inputKeyHandler=b.bind(function(a){switch(a.type){case"keydown":if(this._isPermissionKeyCode(a.which)){if(this._isEnterKey(a.which)){var b=this._value;this._setInputValue(!1,!0,!0),b!=this._value&&this.value(this._value,!1,!0)}}else a.preventDefault();break;case"focusin":this._setInputValue(!0,!1,!0);break;case"focusout":var b=this._value;this._setInputValue(!1,!0,!0),b!=this._value&&this.value(this._value,!1,!0)}},this),this._iconKeyHandler=b.bind(function(a){if(!this._disabled){var b=this._getArrowKeyType(a.which);b&&a.preventDefault(),"forward"===b?this.value(this._value+this._options.gap,!1,!0):"backward"===b&&this.value(this._value-this._options.gap,!1,!0)}},this),this._$input.on("keydown focusin focusout",this._inputKeyHandler),this._$icon.on("keydown",this._iconKeyHandler),this},type:function(a){return a?(this._type=a,this):this._type},min:function(a,b){return"number"==typeof a?(this._min=a,this._moveMin="number"==typeof b?b:a,this):this._min},max:function(a,b){return"number"==typeof a?(this._max=a,this._moveMax="number"==typeof b?b:a,this):this._max},value:function(a,b,c){if("number"==typeof a){if(!isNaN(a)){var d="boolean"!=typeof c||c;this._options.correctEndpoint&&b||this._options.snap?this._value=this._valueToGapValue(a):this._value=this._correctMoveValue(a),this._setInputValue(!0,d,!1),this._move(this._valueToPercent(this._value),b,c)}return this}return this._valueToGapValue(this._value)},percent:function(a,b){return"number"==typeof a?(a=this._correctPercent(a),this.value(this._percentToValue(a),b),this):this._percent},enable:function(){return this._disabled=!1,this._$icon.removeClass("disabled"),this._$input.attr("disabled",!1),this},disable:function(){return this._disabled=!0,this._$icon.addClass("disabled"),this._$input.attr("disabled",!0),this},focus:function(){return this._$icon.focus(),this},clear:function(){return this._removeEvents(),this},isDisabled:function(){return this._disabled},dispatch:function(a,c){return b.Class.prototype.dispatch.call(this,a,{value:this.value(),currentValue:this._value,isUserInput:c}),this},_move:function(a,c,d){var e={},f="horizontal"===this._options.axis?a:100-a;e[this._offsetProp]=f+"%",this._percent=f,c?(this._$icon.stop().animate(e,this._options.duration,b.bind(function(){this.dispatch("change",d)},this)),this._options.correctEndpoint&&this._options.duration&&this.dispatch("mouseup")):(this._$icon.stop().css(e),this.dispatch("change",d))},_correctValue:function(a){return athis._max&&(a=this._max),a},_correctMoveValue:function(a){return athis._moveMax&&(a=this._moveMax),a},_correctPercent:function(a){return a<0?a=0:a>100&&(a=100),a},_setInputValue:function(a,b,c){var d=this._value;a||(d=this._$input.val(),this._isNumber(d)||(d=this._value));var e=this._valueToGapValue(d),f=e;b&&(f=this._options.addFirstStr+this._valueToNumberFormat(f)+this._options.addLastStr),this._$input.val(f),c&&(this._value=this._correctMoveValue(e))},_valueToGapValue:function(a){var b=Math.round(a/this._options.gap)*this._options.gap,c=b+this._options.gap,d=b-this._options.gap,e=0;return this._options.gap?c>this._options.max&&ba&&(e=this._min-b)&&(b+=Math.round((a-b)/e)*e):b=a,this._correctValue(b)},_percentToValue:function(a){return a/100*(this._options.max-this._options.min)+this._options.min},_valueToPercent:function(a){return(a-this._options.min)/(this._options.max-this._options.min)*100},_valueToNumberFormat:function(a){return this._options.numberFixed&&(a=Number(a).toFixed(this._options.numberFixed)),this._options.numberFormat&&(a=b.string.numberFormat(a),this._options.currencyFormat&&(a=this._getCurrencyFormat(a,this._options.currencyFormat))),a},_getCurrencyFormat:function(a,b){switch(b){case"de":case"es":case"nl":case"it":case"be":a=a.replace(/[.,]/g,function(a){return","===a?".":","});break;case"no":case"fr":case"sk":case"pl":a=a.replace(/[.,]/g,function(a){return","===a?" ":","})}return a},_isPermissionKeyCode:function(a){return!!b.ua.ANDROID||(a>47&&a<58||a>95&&a<106||8==a||9==a||16==a||46==a||this._isEnterKey(a)||189==a||109==a||190==a||110==a||this._getArrowKeyType(a))},_getArrowKeyType:function(a){var b=void 0;return 37==a||40==a?b="backward":38!=a&&39!=a||(b="forward"),b},_isNumber:function(a){var b=Number(a);return"number"==typeof b&&!isNaN(b)},_isEnterKey:function(a){return 13==a},_removeEvents:function(){this._$input.off("keydown focusin focusout",this._inputKeyHandler),this._$icon.off("keydown",this._iconKeyHandler)}},"ixSnack.BaseSlider"),ixSnack.Slider=ixSnack.BaseClass.extend({initialize:function(a){this._$target=a,this._$input=this._$target.find(".ix-input"),this._$icon=this._$target.find(".ix-icon"),this._$slideBar=this._$target.find(".ix-slider-bar"),this._$progress=this._$target.find(".ix-progress"),this._options=ixSnack.getOptions(this._$target.attr("data-ix-options")),this._currentPer=0,this._disabled=!1,this._isInit=!1,this._isMouseDown=!1,this._isMouseUp=!1,this._setOptions(),this._setEvents(),this._setProgress(),this._options.disable&&this.disable(),this._dispatch("init",!1)},changeValue:function(a){a&&this._slider.value(this._correctValue(a))},getValue:function(){return this._slider.value()},enable:function(){this._slider.enable(),this._$target.removeClass("disabled"),this._disabled=!1,this._setTouchAction("horizontal"===this._options.axis?"pan-y":"pan-x")},disable:function(){this._slider.disable(),this._$target.addClass("disabled"),this._disabled=!0,this._setTouchAction("auto")},clear:function(){this._removeEvents(),this.enable(),this._gAxis&&this._gAxis.clear(),this._slider&&this._slider.clear(),ixSnack.removePlugin(this._$target,"slider")},_setOptions:function(){this._options.maxthis._options.max-this._options.min&&(this._options.gap=this._options.max-this._options.min),"horizontal"===this._options.axis?(this._offsetProp="left",this._posProp="pageX",this._sizeProp="width"):(this._offsetProp="top",this._posProp="pageY",this._sizeProp="height"),"number"!=typeof this._options.value&&(this._options.value=this._options.min),this._options.value=this._correctValue(this._options.value)},_setEvents:function(){this._onTouch=b.bind(this._touchHandler,this),this._onDrag=b.bind(this._dragHandler,this),this._slider=new ixSnack.BaseSlider(this._$icon,this._$input,this._options),this._slider.addListener("change",b.bind(function(a){var b=this._isChangeValue(a.value);this._value=a.value,this._currentPer=this._slider.percent(),this._setProgress(),a.isUserInput&&this._dispatch("slideStart",!0),b&&this._dispatch("change",a.isUserInput||this._isMouseDown),(this._isMouseUp||a.isUserInput)&&this._dispatch("slideEnd",!0)},this)).addListener("mouseup",b.bind(function(a){this._currentPer=this._slider.percent(),this._setProgress(!0)},this)).min(this._options.min).max(this._options.max).value(this._options.value).setEvents(),b.ua.TOUCH_DEVICE?(this._touchEvent=new b.event.TouchEvent(this._$slideBar),this._docTouchEvent=new b.event.TouchEvent(document),ixSnack.MS_POINTER?(this._setTouchAction("horizontal"===this._options.axis?"pan-y":"pan-x"),this._touchEvent.addListener("touchstart",this._onTouch)):(this._gAxis=new b.event.GestureAxis(this._$slideBar,{aType:this._options.axis,preventDefault:"vertical"===this._options.axis&&b.ua.SAFARI&&parseFloat(b.ua.VERSION)>9}).addListener("axis",this._onTouch),this._$slideBar.on("mousedown",this._onDrag))):this._$slideBar.on("mousedown",this._onDrag)},_touchHandler:function(a){if(!this._disabled){var b=0;switch("axis"!=a.type&&(a.preventDefault(),a.stopPropagation()),a.type){case"axis":case"touchstart":this._docTouchEvent.addListener("touchmove",this._onTouch,{passive:!1}),this._docTouchEvent.addListener("touchend",this._onTouch),this._docTouchEvent.addListener("touchcancel",this._onTouch),b=this._pxToPercent(this._getEventPos(a)),this._isMouseDown=!0,this._dispatch("slideStart",!0),this._slider.focus().percent(b);break;case"touchcancel":case"touchend":this._isMouseUp=!0,this._docTouchEvent.removeListener(),b="horizontal"===this._options.axis?this._currentPer:100-this._currentPer,this._slider.percent(b,!0);break;case"touchmove":this._slider.percent(this._pxToPercent(this._getEventPos(a)))}}},_dragHandler:function(b){if(!this._disabled){b.preventDefault(),b.stopPropagation();var c=this._pxToPercent(this._getEventPos(b));switch(b.type){case"mousedown":this._isMouseDown=!0,a(document).on("mousemove",this._onDrag),a(document).on("mouseup",this._onDrag),this._dispatch("slideStart",!0),this._slider.focus().percent(c);break;case"mouseup":this._isMouseUp=!0,a(document).off("mousemove",this._onDrag),a(document).off("mouseup",this._onDrag),this._slider.percent(c,!0);break;case"mousemove":this._slider.percent(c)}}},_setProgress:function(a){if(this._slider){var b={},c=this._slider.percent(),d="horizontal"===this._options.axis?c:100-c,e="horizontal"===this._options.axis?0:c;b[this._sizeProp]=d+"%",b[this._offsetProp]=e+"%",a&&this._options.correctEndpoint&&this._options.duration?this._$progress.stop().animate(b,this._options.duration):this._$progress.stop().css(b)}},_isChangeValue:function(a){return this._value!==a},_setTouchAction:function(a){b.ua.TOUCH_DEVICE&&b.ua.WINDOWS&&(this._$slideBar.css({"-ms-touch-action":a,"touch-action":a}),"auto"==a?this._$slideBar.off("dragstart",this._dragStartHandler):this._$slideBar.on("dragstart",this._dragStartHandler))},_dragStartHandler:function(a){a.preventDefault()},_correctValue:function(a){return athis._options.max&&(a=this._options.max),a},_removeEvents:function(){this._docTouchEvent&&this._docTouchEvent.clear(),this._touchEvent&&this._touchEvent.clear(),this._setTouchAction("auto"),this._$slideBar.off("mousedown",this._onDrag),a(document).off("mousemove mouseup",this._onDrag)},_getEventPos:function(a){var b=this._$slideBar.offset()[this._offsetProp];return"axis"===a.type||a.type.indexOf("touch")===-1?a[this._posProp]-b:a.touches[0][this._posProp]-b},_pxToPercent:function(a){var b=a/this._$slideBar[this._sizeProp]()*100;return"horizontal"===this._options.axis?b:100-b},_dispatch:function(a,b){if("init"===a)this._isInit=!0;else if(!this._isInit)return;"slideEnd"===a&&(this._isMouseDown=!1,this._isMouseUp=!1),this._$target.triggerHandler({type:"ixSlider:"+a,value:this.getValue(),userInteraction:b})}},"ixSnack.Slider"),ixSnack.RangeSlider=ixSnack.BaseClass.extend({initialize:function(a){this._$target=a,this._$minInput=this._$target.find(".ix-min-input"),this._$maxInput=this._$target.find(".ix-max-input"),this._$minIcon=this._$target.find(".ix-min-icon"),this._$maxIcon=this._$target.find(".ix-max-icon"),this._$slideBar=this._$target.find(".ix-slider-bar"),this._$progress=this._$target.find(".ix-progress"),this._options=ixSnack.getOptions(this._$target.attr("data-ix-options")),this._currentPer=0,this._disabled=!1,this._isInit=!1,this._isMouseDown=!1,this._isMouseUp=!1,this._setOptions(),this._setEvents(),this._setProgress(),"string"==typeof this._options.disable?this.disable(this._options.disable):this._options.disable&&this.disable(),this._dispatch("init",!1)},changeValues:function(a){if(b.isArray(a)&&2===a.length){var c=this._correctValues(a);this._minSlider.max(c[1]).value(c[0]),this._maxSlider.min(c[0]).value(c[1])}},getValues:function(){return[this._minSlider.value(),this._maxSlider.value()]},enable:function(a){a&&"min"!==a||this._minSlider.enable(),a&&"max"!==a||this._maxSlider.enable(),this._minSlider.isDisabled()||this._maxSlider.isDisabled()||(this._$target.removeClass("disabled"),this._disabled=!1),this._setTouchAction("horizontal"===this._options.axis?"pan-y":"pan-x")},disable:function(a){a&&"min"!==a||this._minSlider.disable(),a&&"max"!==a||this._maxSlider.disable(),this._minSlider.isDisabled()&&this._maxSlider.isDisabled()&&(this._$target.addClass("disabled"),this._disabled=!0,this._setTouchAction("auto"))},clear:function(){this._removeEvents(),this.enable(),this._gAxis&&this._gAxis.clear(),this._minSlider&&this._minSlider.clear(),this._maxSlider&&this._maxSlider.clear(),ixSnack.removePlugin(this._$target,"range-slider")},_setOptions:function(){this._options.values&&this._options.values.length>1?this._options.values=[this._options.values[0].value,this._options.values[1].value]:this._options.values=[this._options.min,this._options.max],this._options.maxthis._options.max-this._options.min&&(this._options.gap=this._options.max-this._options.min),"horizontal"===this._options.axis?(this._offsetProp="left",this._posProp="pageX",this._sizeProp="width"):(this._offsetProp="top",this._posProp="pageY",this._sizeProp="height"),this._options.values=this._correctValues(this._options.values)},_correctValues:function(a){var b=a[0],c=a[1];return bthis._options.max&&(c=this._options.max),b>c&&(b=c),[b,c]},_setEvents:function(){this._onTouch=b.bind(this._touchHandler,this),this._onDrag=b.bind(this._dragHandler,this),this._minSlider=new ixSnack.BaseSlider(this._$minIcon,this._$minInput,this._options),this._minSlider.addListener("change",b.bind(function(a){var b=this._isChangeValue(a.value,this._maxValue);this._minValue=a.value,this._currentPer=this._minSlider.percent(),this._setProgress(),a.isUserInput&&this._dispatch("slideStart",!0,this._minSlider.type()),this._maxSlider&&this._maxSlider.min(a.value,a.currentValue),b&&this._dispatch("change",a.isUserInput||this._isMouseDown,this._minSlider.type()),(this._isMouseUp||a.isUserInput)&&this._dispatch("slideEnd",!0,this._minSlider.type())},this)).addListener("mouseup",b.bind(function(a){this._currentPer=this._minSlider.percent(),this._setProgress(!0)},this)).type("min").min(this._options.min).max(this._options.values[1]).value(this._options.values[0]).setEvents(),this._maxSlider=new ixSnack.BaseSlider(this._$maxIcon,this._$maxInput,this._options),this._maxSlider.addListener("change",b.bind(function(a){var b=this._isChangeValue(this._minValue,a.value);this._maxValue=a.value,this._currentPer=this._maxSlider.percent(),this._setProgress(),a.isUserInput&&this._dispatch("slideStart",!0,this._maxSlider.type()),this._minSlider&&this._minSlider.max(a.value,a.currentValue),b&&this._dispatch("change",a.isUserInput||this._isMouseDown,this._maxSlider.type()),(this._isMouseUp||a.isUserInput)&&this._dispatch("slideEnd",!0,this._maxSlider.type()) +!function(a,b){"use strict";if(window.ixSnack){console&&(console.warn?console.warn('"ixSnack"\uc774 \uc911\ubcf5 \uc120\uc5b8\ub418\uc5b4 \uc815\uc0c1 \ub3d9\uc791\uc744 \ubcf4\uc7a5\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.'):b.log('"ixSnack"\uc774 \uc911\ubcf5 \uc120\uc5b8\ub418\uc5b4 \uc815\uc0c1 \ub3d9\uc791\uc744 \ubcf4\uc7a5\ud560 \uc218 \uc5c6\uc2b5\ub2c8\ub2e4.'))}var c=1,d={};window.ixSnack={VERSION:"0.4.2",MS_POINTER:navigator.pointerEnabled||navigator.msPointerEnabled,TRANSFORM:function(){if(!b.ua.MSIE||!b.ua.DOC_MODE_IE10_LT)for(var a="transform WebkitTransform".split(" "),c=0;c-1?(b=[],String(a).replace(/([-\d\.]+|[a-z-]+)([a-z\%]+)?/g,function(a,c,d){b.push({value:ixSnack.parseDataType(c),unit:d||""})})):String(a).replace(/([-\d\.\s]+|[a-z-]+)([a-z\%]+)?/,function(a,c,d){b={value:ixSnack.parseDataType(c),unit:d||""}}),b},parseDataType:function(a){return a&&(a.indexOf("true")>-1?a=Boolean(a):a.indexOf("false")>-1?a=Boolean():/^-*[0-9\.]+$/.test(a)&&(a=Number(a))),a},getOptions:function(a){var c=ixSnack.parseOptions(a),d={axis:c.axis?c.axis.value:"horizontal",loop:!c.loop||c.loop.value,duration:c.duration?c.duration.value:0,autoPlay:!!c.autoPlay&&c.autoPlay.value,delay:c.delay?c.delay.value:4e3,blockClickEvent:!!c.blockClickEvent&&c.blockClickEvent.value,viewLength:c.viewLength?c.viewLength.value:1,motionType:c.motionType?c.motionType.value:"",viewportRatio:c.viewportRatio?c.viewportRatio:null,easing:c.easing?c.easing.value:"ease",itemSize:c.itemSize?c.itemSize:null,itemMargin:c.itemMargin?c.itemMargin:null,defaultIndex:c.defaultIndex?c.defaultIndex.value:0,datumPoint:c.datumPoint?c.datumPoint.value+c.datumPoint.unit:0,opposite:!!c.opposite&&c.opposite.value,paging:!!c.paging&&c.paging.value,correctEndpoint:!!c.correctEndpoint&&c.correctEndpoint.value,includeMargin:!!c.includeMargin&&c.includeMargin.value,bounce:!c.bounce||c.bounce.value,min:c.min?c.min.value:null,max:c.max?c.max.value:null,gap:c.gap?c.gap.value:1,snap:!!c.snap&&c.snap.value,values:c.values?c.values:null,numberFormat:!!c.numberFormat&&c.numberFormat.value,addFirstStr:c.addFirstStr?c.addFirstStr.value:"",addLastStr:c.addLastStr?c.addLastStr.value:"",value:c.value?c.value.value:null,disable:!!c.disable&&c.disable.value,touchDisable:!!c.touchDisable&&c.touchDisable.value,currencyFormat:c.currencyFormat?c.currencyFormat.value:"",numberFixed:c.numberFixed?c.numberFixed.value:0,swipeSensitivity:c.swipeSensitivity?c.swipeSensitivity.value:.5};return d.moveLength=c.moveLength?c.moveLength.value:d.viewLength,d.easing=b.string.camelCase(d.easing),d.paging&&d.loop&&(d.paging=!1),d.numberFormat||(d.currencyFormat=""),d},move:function(a,c,d,e,f,g){if(a.length){var h="";if(ixSnack.TRANSFORM)if(h=b.ua.TOUCH_DEVICE?ixSnack.TRANSFORM+":translate3d("+("horizontal"===d.axis?c+",0":"0,"+c)+",0);":ixSnack.TRANSFORM+":translate"+("horizontal"===d.axis?"X":"Y")+"("+c+");",g)b(a).transition(h,"none"),"function"==typeof e&&e({data:f});else{var i=ixSnack.getCssEasing?ixSnack.getCssEasing(d.easing):d.easing,j=ixSnack.TRANSFORM+" "+d.duration+"ms "+i+";",k="function"==typeof e?setTimeout(function(a){k&&clearTimeout(k),"function"==typeof e&&e({data:f})},2*d.duration):null;setTimeout(function(c){b(a).transition(h,j,{onTransitionEnd:function(a){k&&clearTimeout(k),"function"==typeof e&&e({data:f})}})},0)}else if(h="horizontal"===d.axis?{left:c}:{top:c},g)a.stop().css(h),"function"==typeof e&&e({data:f});else{var i="ease"===d.easing?"swing":d.easing;a.stop().animate(h,d.duration,i,function(){"function"==typeof e&&e({data:f})})}}},moveTo:function(a,b,c,d,e){this.move(a,b,c,d,e,!0)},size:function(a,b,c,d,e,f){var g="horizontal"===c.axis?"width":"height";this.animate(a,g,b,c,d,e,f)},animate:function(a,c,d,e,f,g,h){if(a.length)if(ixSnack.TRANSFORM)if(h)b(a).transition(c+":"+d,"none"),"function"==typeof f&&f({data:g});else{var i=ixSnack.getCssEasing?ixSnack.getCssEasing(e.easing):e.easing,j="function"==typeof f?setTimeout(function(a){j&&clearTimeout(j),"function"==typeof f&&f({data:g})},2*e.duration):null;setTimeout(function(h){b(a).transition(c+":"+d,c+" "+e.duration+"ms "+i+";",{onTransitionEnd:function(a){j&&clearTimeout(j),"function"==typeof f&&f({data:g})}})},0)}else{var k={};if(k[c]=d,h)a.stop().css(k),"function"==typeof f&&f({data:g});else{var i="ease"===e.easing?"swing":e.easing;a.stop().animate(k,e.duration,i,function(){"function"==typeof f&&f({data:g})})}}}},a.fn.extend({ixOptions:function(c){if(b.object.is(c))return this.each(function(b,d){var e=a(d).attr("data-ix-options"),f=e?ixSnack.objToOptions(e,c):ixSnack.objToOptions("",c);a(d).attr("data-ix-options",f).addClass("ix-options-apply")});var d=ixSnack.parseOptions(this.attr("data-ix-options"));if(b.string.is(c)){var e=d[b.string.camelCase(c)];d=e?b.array.is(e)?[e[0].unit?e[0].value+e[0].unit:e[0].value,e[1].unit?e[1].value+e[1].unit:e[1].value]:e.unit?e.value+e.unit:e.value:void 0}return d},ixSlideMax:function(a,b){return ixSnack.setPlugin(this,"slide-max",ixSnack.SlideMax,a,b)},ixSlideLite:function(a,b){return ixSnack.setPlugin(this,"slide-lite",ixSnack.SlideLite,a,b)},ixOverlayList:function(a,b){return ixSnack.setPlugin(this,"overlay-list",ixSnack.OverlayList,a,b)},ixRangeSlider:function(a,b){return ixSnack.setPlugin(this,"range-slider",ixSnack.RangeSlider,a,b)},ixSlider:function(a,b){return ixSnack.setPlugin(this,"slider",ixSnack.Slider,a,b)},ixRatioSize:function(c){return c&&b.object.is(c)&&this.ixOptions(c),this.each(function(b,c){var d,e,f=a(c),g=ixSnack.parseOptions(f.attr("data-ix-options")),h=g.axis?g.axis.value:"horizontal",i=g.controlType?g.controlType.value:"style",j=!1;g.ratio&&("horizontal"===h?(d=f.width(),e=d*(g.ratio[1].value/g.ratio[0].value),d&&("style"!==i&&"all"!==i||f.css("height",e+"px"),"attr"!==i&&"all"!==i||f.attr("height",e),j=!0)):(e=f.height(),d=e*(g.ratio[0].value/g.ratio[1].value),e&&("style"!==i&&"all"!==i||f.css("width",d+"px"),"attr"!==i&&"all"!==i||f.attr("width",d),j=!0)),j&&f.addClass("ix-ratio-size-apply"))})}}),ixSnack.BaseClass=b.Class.extend({getCurrentIndex:function(){return this._selectIdx},getTotalLength:function(){return this._totalLength},getComputedOption:function(a){return b.isString(a)?(a=b.string.camelCase(a),this._options.hasOwnProperty(a)?this._options[a]:void 0):b.object.clone(this._options)},enable:function(){this._swipe&&this._swipe.enable(),this._thumbController&&this._thumbController.enable(),this._disabled=!1},disable:function(){this._swipe&&this._swipe.disable(),this._thumbController&&this._thumbController.disable(),this._disabled=!0}},"ixSnack.BaseClass"),ixSnack.ListIndexManager=b.Class.extend({initialize:function(a,b){this._options=a||{},this._dispatches="object"==typeof b?b:{},this._selectIdx=0,this._originStartIdx=0,this._lastCloneStartIdx=0,this._originLength=this._options.originLength,this._options.loop&&this._originLength>this._options.viewLength&&(this._originStartIdx=this._options.firstCloneLength,this._lastCloneStartIdx=this._originStartIdx+this._originLength);var c=this._originStartIdx;this._options.defaultIndex&&(this._options.loop?(this.correct(this._options.defaultIndex+this._originStartIdx),c=this._selectIdx):c=this._getCorrectIndex(this._options.defaultIndex)),this._dispatch("init",c)},prev:function(a,b){if(!(this._originLength<=this._options.viewLength)){var c=a||this._options.moveLength;this._setNextIndex(-c,b)}},next:function(a,b){if(!(this._originLength<=this._options.viewLength)){var c=a||this._options.moveLength;this._setNextIndex(c,b)}},correct:function(a){if(this._options.loop&&!(this._originLength<=this._options.viewLength)){var b=this._getCorrectType(a);"next"===b?this._dispatch("correct",this._originStartIdx+(a-this._lastCloneStartIdx)):"prev"===b?this._dispatch("correct",this._lastCloneStartIdx-(this._originStartIdx-a)):this._selectIdx=a}},_setNextIndex:function(a,b){var c=this._selectIdx+a;this._options.loop?b&&(c<1?(this._dispatch("correct",this._lastCloneStartIdx-(this._originStartIdx-this._selectIdx)),c=this._selectIdx+a):c>this._options.totalLength-1&&(this._dispatch("correct",this._originStartIdx+(this._selectIdx-this._lastCloneStartIdx)),c=this._selectIdx+a)):c=this._getCorrectIndex(c),this._dispatch("change",c)},_getCorrectIndex:function(a){if(a<0)a=0;else if(a>this._originLength-this._options.viewLength){var b=this._originLength%this._options.viewLength;if(this._options.paging&&b){var c=Math.ceil(this._originLength/this._options.viewLength)-1,d=Math.ceil(a/this._options.viewLength);d>c&&(a=this._originLength-b)}else a=this._originLength-this._options.viewLength}return a},_getCorrectType:function(a){var b="",c=this._options.datumPoint?1:0;return a+2*this._options.viewLength>this._options.totalLength?b="next":a-this._options.viewLength=c&&(b=!0)}else a>=this._originLength-this._options.viewLength&&(b=!0);return b},_dispatch:function(a,c){this._selectIdx=c;var d="on"+b.string.capitalize(a);this._dispatches[d]&&this._dispatches[d].call(this,{type:a,index:c,endpoint:this._getEndpoint(c)})}},"ixSnack.ListIndexManager"),ixSnack.ThumbController=b.Class.extend({initialize:function(a,b){this._$controller=a.find("> .ix-controller"),this._$prevBtn=this._$controller.find(".ix-btn-prev"),this._$nextBtn=this._$controller.find(".ix-btn-next"),this._$thumbArea=this._$controller.find(".ix-thumbs"),this._options=b||{},this._isPrevButtonTag=this._isButtonTag(this._$prevBtn),this._isNextButtonTag=this._isButtonTag(this._$nextBtn),this._thumbHtml="",this._isDisabled=!1,this._isBlock=!1,this._selectIdx=0,this._setThumbs(),this._setEvents(),this._selectThumb(0),this._options.originLength<=this._options.viewLength&&(this._$prevBtn.addClass("disabled").attr("aria-disabled",!0),this._$nextBtn.addClass("disabled").attr("aria-disabled",!0),this._$controller.addClass("disabled"),this._$thumbs.find(".ix-btn").attr("aria-disabled",!0))},setIndex:function(a,b){return this._selectThumb(a),this._setArrowState(b),this},enable:function(){return this._isDisabled=!1,this},disable:function(){return this._isDisabled=!0,this},block:function(a){return"boolean"==typeof a?(this._isBlock=a,this):this._isBlock},clear:function(){this._$prevBtn.off("click",this._directionHandler),this._$nextBtn.off("click",this._directionHandler),this._$thumbs.off("click",".ix-btn",this._thumbHandler),this._$thumbArea.html(this._thumbHtml),this._$controller.removeClass("disabled"),this._$prevBtn.removeClass("disabled").removeAttr("aria-disabled"),this._$nextBtn.removeClass("disabled").removeAttr("aria-disabled"),this._removeWaiAria()},_selectThumb:function(a){var b=this._options.paging?Math.ceil(a/this._options.viewLength):a;this._$thumbs.removeClass("active").attr("aria-selected",!1).eq(b).addClass("active").attr("aria-selected",!0),this._selectIdx=a},_setEvents:function(){this._directionHandler=b.bind(function(b){b.preventDefault(),a(b.currentTarget).hasClass("disabled")||this._isDisabled||this._isBlock||(a(b.currentTarget).hasClass("ix-btn-prev")?this._dispatch("prev"):this._dispatch("next"))},this),this._thumbHandler=b.bind(function(b){b.preventDefault(),this._isDisabled||this._isBlock||this._dispatch("index",a(b.currentTarget).closest(".ix-thumb").attr("data-idx"))},this),this._$prevBtn.on("click",this._directionHandler),this._$nextBtn.on("click",this._directionHandler),this._$thumbs.on("click",".ix-btn",this._thumbHandler)},_setArrowState:function(a){this._options.originLength>this._options.viewLength&&!this._options.loop&&(a>0?(this._$prevBtn.removeClass("disabled").attr("aria-disabled",!1),this._isPrevButtonTag&&this._$prevBtn.attr("disabled",!1).prop("disabled",!1)):(this._$prevBtn.addClass("disabled").attr("aria-disabled",!0),this._isPrevButtonTag&&this._$prevBtn.attr("disabled",!0).prop("disabled",!0)),a").append(this._$thumbArea.find("> .ix-thumb")),f=e.html(),g=0;g/gim,g+1);this._$thumbArea.html(c),this._$thumbs=this._$thumbArea.find("> .ix-thumb").each(b.bind(function(b,c){var d=this._options.paging?b*this._options.viewLength:b;a(c).attr("data-idx",d)},this))},_isButtonTag:function(a){var b=!1;if(a.get(0)){var c=a.get(0).nodeName;b=/input/i.test(c)?/button/i.test(a.attr("type")):/button/i.test(c)}return b},_removeWaiAria:function(){this._$thumbs.removeAttr("aria-selected")},_dispatch:function(a,b){this._selectIdx=Number(b),this.dispatch(a,{index:this._selectIdx})}},"ixSnack.ThumbController"),ixSnack.SlideMax=ixSnack.BaseClass.extend({initialize:function(a){this._$target=a,this._$viewport=this._$target.find("> .ix-list-viewport"),this._$ul=this._$viewport.find("> .ix-list-items"),this._options=ixSnack.getOptions(this._$target.attr("data-ix-options")),this._directionType="none",this._selectIdx=0,this._originIdx=-1,this._oldOriginIdx=-1,this._currentPos=0,this._disabled=!1,this._endpoint=!1,this._isTimerBlock=!1,this._getItems(!0),this._setItems(),this._setSize(),this._setAutoPlay(),this._setEvents(),this._options.motionType=this._options.motionType||"slide",this._options.originLength=this._originLength,this._options.totalLength=this._totalLength,this._options.moveLength>this._options.viewLength&&(this._options.moveLength=this._options.viewLength),this._options.duration||(this._options.duration=400),this._thumbController=new ixSnack.ThumbController(this._$target,this._options).addListener("next",b.bind(this._thumbHandler,this)).addListener("prev",b.bind(this._thumbHandler,this)).addListener("index",b.bind(this._thumbHandler,this)),this._listIndexManager=new ixSnack.ListIndexManager(this._options,{onChange:b.bind(this._listIndexEventHandler,this),onCorrect:b.bind(this._listIndexEventHandler,this),onInit:b.bind(this._listIndexEventHandler,this)}),this._dispatch("init")},startTimer:function(){this._disabled||(this._isTimerBlock=!1,this._playTimer())},stopTimer:function(){this._isTimerBlock=!0,this._pauseTimer()},changeIndex:function(a){this._selectOriginIdx(a)},next:function(a,b){this._disabled||this._thumbController.block()||(this._directionType="next",this._listIndexManager.next(a,b))},prev:function(a,b){this._disabled||this._thumbController.block()||(this._directionType="prev",this._listIndexManager.prev(a,b))},clear:function(){this._directionType="none",this._pauseTimer(),this._removeEvents(),this._removeSize(),this._$ul.stop(),this._$items.removeAttr("data-origin-idx").removeAttr("data-idx"),this._$cloneItems&&this._$cloneItems.remove(),ixSnack.removePlugin(this._$target,"slide-max"),this._removeWaiAria()},resize:function(){this._pauseTimer(),this._removeSize(),this._setSize(),this._moveItems(this._selectIdx,"none",!0,!0)},_thumbHandler:function(a){switch(a.type){case"next":this.next();break;case"prev":this.prev();break;case"index":this.changeIndex(a.index)}},_listIndexEventHandler:function(a){switch(a.type){case"change":this._dispatch("slideStart"),this._endpoint=a.endpoint,this._originIdx=Number(this._$items.eq(a.index).attr("data-origin-idx")),this._moveItems(a.index,this._options.motionType);break;case"correct":this._moveItems(a.index,"none",!0);break;case"init":this._endpoint=a.endpoint,this._originIdx=Number(this._$items.eq(a.index).attr("data-origin-idx")),this._moveItems(a.index,"none",!1,!0)}},_getItems:function(a){this._$items=this._$ul.find("> .ix-list-item"),this._totalLength=this._$items.length,a&&(this._originLength=this._totalLength)},_setItems:function(){this._totalLength&&(this._$items.each(function(b,c){a(c).attr("data-origin-idx",b)}),this._options.loop&&this._originLength>this._options.viewLength&&(this._cloneItems(),this._getItems()),this._$items.each(function(b,c){a(c).attr("data-idx",b).attr("aria-hidden",!0)}))},_cloneItems:function(){var a=this._$items.slice(this._totalLength-this._options.viewLength-1,this._totalLength).clone(),b=this._$items.slice(0,this._options.viewLength+1).clone();a.length&&a.insertBefore(this._$items.eq(0)),b.length&&this._$ul.append(b),this._options.firstCloneLength=a.length,this._$cloneItems=a.add(b),this._$cloneItems.addClass("ix-clone")},_setEvents:function(){!this._options.touchDisable&&b.ua.TOUCH_DEVICE&&this._totalLength>this._options.viewLength&&(this._swipe=new b.event.Swipe(this._$viewport.get(0),{axis:this._options.axis,preventDefault:"vertical"===this._options.axis&&b.ua.SAFARI&&parseFloat(b.ua.VERSION)>9}).sensitivity(this._options.swipeSensitivity).addListener("axis",b.bind(function(a){this._thumbController.block()||(this._pauseTimer(),this._dispatch("touchStart"))},this)).addListener("move",b.bind(function(a){this._thumbController.block()||"slide"===this._options.motionType&&this._touchMove(a)},this)).addListener("swipe",b.bind(function(a){if(!this._thumbController.block()){if(this._dispatch("touchEnd"),0===("horizontal"===this._options.axis?a.moveX:a.moveY))return void this._playTimer();this._targetSwipe(a.swipe)}},this))),this._mouseHandler=b.bind(function(a){"mouseover"===a.type?this._pauseTimer():this._playTimer()},this),this._options.autoPlay&&!b.ua.TOUCH_DEVICE&&this._$target.on("mouseover mouseout",this._mouseHandler)},_touchMove:function(a){var b="horizontal"===this._options.axis?a.growX:a.growY,c=this._isOverPosition(b+this._currentPos),d=c?.3*b+this._currentPos:b+this._currentPos;(c&&this._options.bounce||!c)&&(ixSnack.moveTo(this._$ul,d+"px",this._options),this._currentPos=d)},_targetSwipe:function(a){"left"===a||"up"===a?this.next():"right"===a||"down"===a?this.prev():(this._dispatch("slideStart"),this._moveItems(this._selectIdx,this._options.motionType))},_isOverPosition:function(a){var b=!1,c=0;return this._options.loop||(c=this._options.paging&&this._options.viewLength>1?this._indexToPosition(this._options.viewLength*Math.floor(this._totalLength/this._options.viewLength)):this._options.correctEndpoint?-(this._totalLength*this._itemSize-this._viewportSize):this._indexToPosition(this._totalLength-this._options.viewLength),a>0?b=!0:a=c&&bthis._options.viewLength&&this._options.correctEndpoint&&!this._options.loop&&!this._options.paging&&this._endpoint){(this._totalLength-b)*this._itemSizethis._options.viewLength&&(e[c[0]]=this._options.datumPoint),this._$items.css(d),this._$ul.css(e),this._viewportSize=this._$viewport[b]()}},_getViewportHeight:function(){return b(this._$viewport.get(0)).rect().width*(this._options.viewportRatio[1].value/this._options.viewportRatio[0].value)},_selectOriginIdx:function(a){a>this._originLength||a<0||(this._originIdxa&&this.prev(this._originIdx-a,!0))},_getItemMargins:function(){var b=[];if(this._options.itemMargin)b=[this._options.itemMargin[0].value,this._options.itemMargin[1].value];else{var c=this._$items.css("horizontal"===this._options.axis?["marginLeft","marginRight"]:["marginTop","marginBottom"]);a.each(c,function(a,c){b.push(parseFloat(c))})}return b},_getItemSize:function(){if(this._options.itemSize)return this._options.itemSize.value;var a="horizontal"===this._options.axis?"width":"height";return b(this._$items.get(0)).rect()[a]},_removeSize:function(){this._$viewport.attr("style",""),this._$ul.attr("style",""),this._$items.attr("style","")},_playTimer:function(){!this._isTimerBlock&&this._timer&&this._timer.reset().start()},_pauseTimer:function(){this._timer&&this._timer.stop()},_dispatch:function(a){var b="init change slideEnd".indexOf(a)>-1?this._endpoint:void 0;this._$target.triggerHandler({type:"ixSlideMax:"+a,currentIndex:this._originIdx,totalLength:this._originLength,endpoint:b,direction:this._directionType})}},"ixSnack.SlideMax"),ixSnack.SlideLite=ixSnack.BaseClass.extend({initialize:function(a){this._$target=a,this._$viewport=this._$target.find("> .ix-list-viewport"),this._$ul=this._$viewport.find("> .ix-list-items"),this._options=ixSnack.getOptions(this._$target.attr("data-ix-options")),this._selectIdx=0,this._disabled=!1,this._isTimerBlock=!1,this._currentPos=0,this._directionType="none",this._getItems(),this._setItems(),this._setSize(),this._setAutoPlay(),this._setEvents(),this._options.motionType=this._options.motionType||"slide",this._options.originLength=this._totalLength,this._options.totalLength=this._totalLength,this._totalLength<3&&(this._options.loop=!1),(this._options.defaultIndex>=this._totalLength||this._options.defaultIndex<0)&&(this._options.defaultIndex=0),this._options.duration||(this._options.duration=400),this._thumbController=new ixSnack.ThumbController(this._$target,this._options).setIndex(this._options.defaultIndex,this._options.defaultIndex).addListener("next",b.bind(this._thumbHandler,this)).addListener("prev",b.bind(this._thumbHandler,this)).addListener("index",b.bind(this._thumbHandler,this)),this._arrangeItems(this._options.defaultIndex),this._selectIdx=this._centerIdx,this._dispatch("init")},startTimer:function(){this._disabled||(this._isTimerBlock=!1,this._playTimer())},stopTimer:function(){this._isTimerBlock=!0,this._pauseTimer()},changeIndex:function(a){a>this._totalLength||a<0||!this._totalLength||(this._selectIdxa&&this.prev(a))},next:function(a,b){this._disabled||this._thumbController.block()||!this._totalLength||(this._directionType="next",this._selectMove(this._selectIdx+1,a,"next",b))},prev:function(a,b){this._disabled||this._thumbController.block()||!this._totalLength||(this._directionType="prev",this._selectMove(this._selectIdx-1,a,"prev",b))},resize:function(){this._totalLength&&(this._pauseTimer(),this._removeSize(),this._setSize(),this._arrangeItems(this._selectIdx),this._playTimer())},clear:function(){this._directionType="none",this._pauseTimer(),this._removeEvents(),this._removeStyle(),this._$ul.stop(),this._$items.removeAttr("data-origin-idx").removeAttr("data-idx"),ixSnack.removePlugin(this._$target,"slide-lite"),this._removeWaiAria()},_thumbHandler:function(a){switch(a.type){case"next":this.next();break;case"prev":this.prev();break;case"index":this.changeIndex(a.index)}},_setEvents:function(){!this._options.touchDisable&&b.ua.TOUCH_DEVICE&&this._totalLength>1&&(this._swipe=new b.event.Swipe(this._$viewport.get(0),{axis:this._options.axis,preventDefault:"vertical"===this._options.axis&&b.ua.SAFARI&&parseFloat(b.ua.VERSION)>9}).sensitivity(this._options.swipeSensitivity).addListener("axis",b.bind(function(a){this._thumbController.block()||(this._pauseTimer(),this._dispatch("touchStart"))},this)).addListener("move",b.bind(function(a){this._thumbController.block()||"slide"===this._options.motionType&&this._touchMove(a)},this)).addListener("swipe",b.bind(function(a){if(!this._thumbController.block()){if(this._dispatch("touchEnd"),0===("horizontal"===this._options.axis?a.moveX:a.moveY))return void this._playTimer();this._targetSwipe(a.swipe)}},this))),this._mouseHandler=b.bind(function(a){"mouseover"===a.type?this._pauseTimer():this._playTimer()},this),this._options.autoPlay&&!b.ua.TOUCH_DEVICE&&this._$target.on("mouseover mouseout",this._mouseHandler)},_touchMove:function(a){var b="horizontal"===this._options.axis?a.growX:a.growY,c=this._isOverPosition(b+this._currentPos),d=c?.3*b+this._currentPos:b+this._currentPos;(c&&this._options.bounce||!c)&&(ixSnack.moveTo(this._$ul,d+"px",this._options),this._currentPos=d),this._dispatch("touchMove")},_targetSwipe:function(a){"left"===a||"up"===a?this.next():"right"===a||"down"===a?this.prev():(this._dispatch("slideStart"),this._moveItems(this._selectIdx,"none",this._options.motionType))},_isOverPosition:function(a){var b=!1;return this._options.loop||(this._selectIdx<=0&&a>-this._itemSize?b=!0:this._selectIdx>=this._totalLength-1&&a<-this._itemSize&&(b=!0)),b},_selectMove:function(a,b,c){"number"==typeof b&&a!==b&&(this._arrangeItems(b,c),a=b),a=this._correctSelectIdx(a),a===this._selectIdx&&(c="none"),this._dispatch("slideStart"),this._moveItems(a,c,this._options.motionType)},_correctSelectIdx:function(a){return a>this._totalLength-1?a=this._options.loop?0:this._totalLength-1:a<0&&(a=this._options.loop?this._totalLength-1:0),a},_arrangeItems:function(a,b){var c=this._getCenterIdx(a,b),d=this._getPrevIdx(a,b),e=this._getNextIdx(a,b),f="horizontal"===this._options.axis?"left":"top";d>-1&&this._$items.eq(d).css(f,"0px").show().attr("aria-hidden",!0),this._$items.eq(c).css(f,this._itemSize+"px").show().attr("aria-hidden",!1),e>-1&&this._$items.eq(e).css(f,2*this._itemSize+"px").show().attr("aria-hidden",!0),this._$items.filter(function(a){return d!==a&&e!==a&&c!==a}).hide().attr("aria-hidden",!0),ixSnack.moveTo(this._$ul,-this._itemSize+"px",this._options),this._currentPos=-this._itemSize,this._centerIdx=c,this._prevIdx=d,this._nextIdx=e},_moveItems:function(a,c,d,e){a=this._correctSelectIdx(a);var f=-this._itemSize;this._pauseTimer(),this._thumbController.block(!0).setIndex(a,a),"next"===c?f=-(2*this._itemSize):"prev"===c&&(f=0),"slide"===d?ixSnack.move(this._$ul,f+"px",this._options,b.bind(this._moveComplete,this),{idx:a,isSilent:e}):ixSnack.moveTo(this._$ul,f+"px",this._options,b.bind(this._moveComplete,this),{idx:a,isSilent:e}),this._currentPos=f},_moveComplete:function(a){var b=this._selectIdx;this._thumbController.block(!1),this._playTimer(),this._selectIdx=a.data.idx,this._arrangeItems(this._selectIdx),a.data.isSilent||(b!==this._selectIdx&&this._dispatch("change"),this._dispatch("slideEnd"),this._directionType="none")},_isEndpoint:function(){return!this._options.loop&&this._selectIdx===this._totalLength-1},_getPrevIdx:function(a,b){var c=b?"next"===b?-1:a:a-1;return"next"===b?c:this._options.loop?this._correctSelectIdx(c):c},_getNextIdx:function(a,b){var c=b?"prev"===b?-1:a:a+1;return"prev"===b?c:this._options.loop?this._correctSelectIdx(c):c},_getCenterIdx:function(a,b){return b?this._selectIdx:a},_setAutoPlay:function(){!this._options.autoPlay||this._totalLength<2||(this._timer=new b.utils.Timer(this._options.delay,this._totalLength).addListener("timer",b.bind(function(a){this._options.opposite?this.prev():this.next()},this)).addListener("complete",b.bind(function(a){this._playTimer()},this)).start())},_setSize:function(){if(this._options.viewportRatio&&this._$viewport.css("height",this._getViewportHeight()+"px"),this._totalLength){var a,b,c={},d={},e=this._getItemMargins(),f=e[0]+e[1];this._itemSize=this._getItemSize(),this._options.includeMargin||(this._itemSize+=f),"horizontal"===this._options.axis?(a="width",b=["marginLeft","marginRight"]):(a="height",b=["marginTop","marginBottom"]),d[a]=3*this._itemSize+100+"px",c[a]=this._itemSize-f+"px",c[b[0]]=e[0]+"px",c[b[1]]=e[1]+"px",this._$items.css(c),this._$ul.css(d)}},_getItemMargins:function(){var b=[];if(this._options.itemMargin)b=[this._options.itemMargin[0].value,this._options.itemMargin[1].value];else{var c=this._$items.css("horizontal"===this._options.axis?["marginLeft","marginRight"]:["marginTop","marginBottom"]);a.each(c,function(a,c){b.push(parseFloat(c))})}return b},_getViewportHeight:function(){return b(this._$viewport.get(0)).rect().width*(this._options.viewportRatio[1].value/this._options.viewportRatio[0].value)},_getItemSize:function(){if(this._options.itemSize)return this._options.itemSize.value;var a="horizontal"===this._options.axis?"width":"height";return b(this._$items.get(this._selectIdx)).rect()[a]},_removeSize:function(){var a="horizontal"===this._options.axis?"width":"height";this._$viewport.attr("style",""),this._$ul.css(a,""),this._$items.css(a,"").css("margin","")},_removeStyle:function(){this._$viewport.attr("style",""),this._$ul.attr("style",""),this._$items.attr("style","")},_removeEvents:function(){this._$target.off("mouseover mouseout",this._mouseHandler),this._thumbController.clear(),this._swipe&&this._swipe.clear()},_getItems:function(){this._$items=this._$ul.find("> .ix-list-item"),this._totalLength=this._$items.length},_setItems:function(){this._$items.each(function(b,c){a(c).attr("data-idx",b).attr("aria-hidden",!0)}).css({ +position:"absolute"})},_removeWaiAria:function(){this._$items.removeAttr("aria-hidden")},_playTimer:function(){!this._isTimerBlock&&this._timer&&this._timer.reset().start()},_pauseTimer:function(){this._timer&&this._timer.stop()},_displacement:function(a){var b=0;return"change"===a||"slideEnd"===a?"next"===this._directionType?b=-1:"prev"===this._directionType&&(b=1):(b=1+this._currentPos/this._itemSize,b<-1?b=-1:b>1&&(b=1)),b},_dispatch:function(a){var b="init change slideEnd".indexOf(a)>-1?this._isEndpoint():void 0,c=this._selectIdx,d=this._displacement(a);this._totalLength||(c=NaN),this._$target.triggerHandler({type:"ixSlideLite:"+a,currentIndex:c,totalLength:this._totalLength,endpoint:b,direction:this._directionType,displacement:d})}},"ixSnack.SlideLite"),ixSnack.OverlayList=ixSnack.BaseClass.extend({initialize:function(a){this._$target=a,this._$viewport=this._$target.find("> .ix-list-viewport"),this._$ul=this._$viewport.find("> .ix-list-items"),this._options=ixSnack.getOptions(this._$target.attr("data-ix-options")),this._selectIdx=0,this._disabled=!1,this._isTimerBlock=!1,this._directionType="none",this._currentPos=0,this._getItems(),this._setItems(),this._setSize(),this._setAutoPlay(),this._setEvents(),this._options.motionType=this._options.motionType||"overlay",this._options.originLength=this._totalLength,this._options.totalLength=this._totalLength,(this._options.defaultIndex>=this._totalLength||this._options.defaultIndex<0)&&(this._options.defaultIndex=0),this._options.duration||(this._options.duration=400),"slide"===this._options.motionType&&this._totalLength<3&&(this._options.loop=!1),this._motion=this._getMotion().addListener("motionMove",b.bind(function(a){this._dispatch("touchMove")},this)).addListener("motionEnd",b.bind(this._motionHandler,this)),this._thumbController=new ixSnack.ThumbController(this._$target,this._options).setIndex(this._options.defaultIndex,this._options.defaultIndex).addListener("next",b.bind(this._thumbHandler,this)).addListener("prev",b.bind(this._thumbHandler,this)).addListener("index",b.bind(this._thumbHandler,this)),this._dispatch("init")},startTimer:function(){this._disabled||(this._isTimerBlock=!1,this._playTimer())},stopTimer:function(){this._isTimerBlock=!0,this._pauseTimer()},changeIndex:function(a){a>this._totalLength||a<0||!this._totalLength||(this._selectIdxa&&this.prev(a,"changeIndex"))},next:function(a,b){if(!this._disabled&&!this._thumbController.block()&&this._totalLength){var c=this._motion.correctSelectIdx("number"==typeof a?a:this._selectIdx+1);this._selectIdx!=c&&(this._directionType="next",this._dispatch("slideStart"),this._pauseTimer(),this._thumbController.block(!0).setIndex(c,c),this._motion.next(c,"changeIndex"===b))}},prev:function(a,b){if(!this._disabled&&!this._thumbController.block()&&this._totalLength){var c=this._motion.correctSelectIdx("number"==typeof a?a:this._selectIdx-1);this._selectIdx!=c&&(this._directionType="prev",this._dispatch("slideStart"),this._pauseTimer(),this._thumbController.block(!0).setIndex(c,c),this._motion.prev(c,"changeIndex"===b))}},clear:function(){this._directionType="none",this._pauseTimer(),this._removeEvents(),this._removeStyle(),this._$items.removeAttr("data-origin-idx").removeAttr("data-idx"),ixSnack.removePlugin(this._$target,"overlay-list"),this._removeWaiAria()},resize:function(){this._totalLength&&(this._pauseTimer(),this._removeSize(),this._motion.resize(),this._setSize(),this._playTimer())},_motionHandler:function(a){var b=this._selectIdx;this._thumbController.block(!1),this._playTimer(),this._selectIdx=a.idx,a.isSilent||(b!==this._selectIdx&&this._dispatch("change"),this._dispatch("slideEnd"),this._directionType="none")},_thumbHandler:function(a){switch(a.type){case"next":this.next();break;case"prev":this.prev();break;case"index":this.changeIndex(a.index)}},_getMotion:function(){var a;switch(this._options.motionType){case"overlay":a=new ixSnack.OverlayList.OverlayMotion(this._$target,this._$ul,this._$items,this._options);break;case"slide":a=new ixSnack.OverlayList.SlideMotion(this._$target,this._$ul,this._$items,this._options);break;case"mask":a=new ixSnack.OverlayList.MaskMotion(this._$target,this._$ul,this._$items,this._options);break;default:a=new ixSnack.OverlayList.Motion(this._$target,this._$ul,this._$items,this._options)}return a},_removeSize:function(){var a="horizontal"===this._options.axis?"width":"height";this._$viewport.attr("style",""),this._$ul.css(a,""),this._$items.css(a,"").css("margin","")},_getItems:function(){this._$items=this._$ul.find("> .ix-list-item"),this._totalLength=this._$items.length},_setItems:function(){this._$items.each(function(b,c){a(c).attr("data-idx",b)}),"mask"!==this._options.motionType&&this._$items.css({position:"absolute"})},_setAutoPlay:function(){!this._options.autoPlay||this._totalLength<2||(this._timer=new b.utils.Timer(this._options.delay,this._totalLength).addListener("timer",b.bind(function(a){this._options.opposite?this.prev():this.next()},this)).addListener("complete",b.bind(function(a){this._playTimer()},this)).start())},_setEvents:function(){var a="horizontal"===this._options.axis?"moveX":"moveY";!this._options.touchDisable&&b.ua.TOUCH_DEVICE&&this._totalLength>1&&(this._swipe=new b.event.Swipe(this._$viewport.get(0),{axis:this._options.axis,preventDefault:"vertical"===this._options.axis&&b.ua.SAFARI&&parseFloat(b.ua.VERSION)>9}).sensitivity(this._options.swipeSensitivity).addListener("axis",b.bind(function(a){this._thumbController.block()||(this._pauseTimer(),this._dispatch("touchStart"))},this)).addListener("move",b.bind(function(a){this._thumbController.block()||this._motion.move(a)},this)).addListener("swipe",b.bind(function(b){if(!this._thumbController.block()){if(this._dispatch("touchEnd"),0===b[a])return void this._playTimer();this._targetSwipe(b.swipe)}},this))),this._mouseHandler=b.bind(function(a){"mouseover"===a.type?this._pauseTimer():this._playTimer()},this),this._options.autoPlay&&!b.ua.TOUCH_DEVICE&&this._$target.on("mouseover mouseout",this._mouseHandler)},_targetSwipe:function(a){"left"===a||"up"===a?this.next():"right"===a||"down"===a?this.prev():(this._dispatch("slideStart"),this._pauseTimer(),this._thumbController.block(!0),this._motion.none())},_removeWaiAria:function(){this._$items.removeAttr("aria-hidden")},_setSize:function(){this._options.viewportRatio&&this._$viewport.css("height",this._getViewportHeight()+"px")},_getViewportHeight:function(){return b(this._$viewport.get(0)).rect().width*(this._options.viewportRatio[1].value/this._options.viewportRatio[0].value)},_removeStyle:function(){this._$viewport.attr("style",""),this._$items.attr("style","")},_removeEvents:function(){this._$target.off("mouseover mouseout",this._mouseHandler),this._thumbController.clear(),this._swipe&&this._swipe.clear(),this._motion&&this._motion.clear()},_playTimer:function(){!this._isTimerBlock&&this._timer&&this._timer.reset().start()},_pauseTimer:function(){this._timer&&this._timer.stop()},_dispatch:function(a){var b="init change slideEnd".indexOf(a)>-1?this._motion.isEndpoint():void 0,c=this._selectIdx;this._totalLength||(c=NaN),this._$target.triggerHandler({type:"ixOverlayList:"+a,currentIndex:c,totalLength:this._totalLength,endpoint:b,direction:this._directionType,displacement:this._motion.displacement()})}},"ixSnack.OverlayList"),ixSnack.OverlayList.Motion=b.Class.extend({initialize:function(a,b,c,d){this._$target=a,this._$ul=b,this._$items=c,this._options=d,this._totalLength=this._$items.length,this._selectIdx=this._options.defaultIndex,this._overlayItem(this._selectIdx,!0)},resize:function(){},displacement:function(){return 0},none:function(){this.dispatch("motionEnd",{idx:this._selectIdx,isSilent:!1})},move:function(a){},next:function(a){this._overlayItem(a)},prev:function(a){this._overlayItem(a)},isEndpoint:function(){return!this._options.loop&&this._selectIdx===this._totalLength-1},isFirstpoint:function(){return!this._options.loop&&0===this._selectIdx},correctSelectIdx:function(a){return a>this._totalLength-1?a=this._options.loop?0:this._totalLength-1:a<0&&(a=this._options.loop?this._totalLength-1:0),a},clear:function(){this.removeListener()},_isOverPosition:function(a){var b=!1;return this._options.loop||(a>0&&this._selectIdx<=0?b=!0:a<0&&this._selectIdx>=this._totalLength-1&&(b=!0)),b},_overlayItem:function(a,c,d){if(d){var e=this._$items.eq(a).show();ixSnack.animate(e,"opacity",0,this._options,null,null,!0),this._$ul.append(e),ixSnack.animate(e,"opacity",1,this._options,b.bind(this._overlayComplete,this),{idx:a,isSilent:c})}else this._$items.hide().eq(a).show(),this._overlayComplete({data:{idx:a,isSilent:c}})},_overlayComplete:function(a){this._setWaiArea(a.data.idx),this._selectIdx=a.data.idx,this.dispatch("motionEnd",{idx:a.data.idx,isSilent:a.data.isSilent})},_getItemSize:function(){if(this._options.itemSize)return this._options.itemSize.value;var a="horizontal"===this._options.axis?"width":"height";return b(this._$items.get(this._selectIdx)).rect()[a]},_getItemMargins:function(){var b=[];if(this._options.itemMargin)b=[this._options.itemMargin[0].value,this._options.itemMargin[1].value];else{var c=this._$items.css("horizontal"===this._options.axis?["marginLeft","marginRight"]:["marginTop","marginBottom"]);a.each(c,function(a,c){b.push(parseFloat(c))})}return b},_setWaiArea:function(a){this._$items.attr("aria-hidden",!0).eq(a).attr("aria-hidden",!1)}},"ixSnack.OverlayList.Motion"),ixSnack.OverlayList.OverlayMotion=ixSnack.OverlayList.Motion.extend({initialize:function(a,b,c,d){this._$target=a,this._$ul=b,this._$items=c,this._options=d,this._totalLength=this._$items.length,this._selectIdx=this._options.defaultIndex,this._overlayItem(this._selectIdx,!0,!1)},next:function(a){this._overlayItem(a,!1,!0)},prev:function(a){this._overlayItem(a,!1,!0)}},"ixSnack.OverlayList.OverlayMotion"),ixSnack.OverlayList.SlideMotion=ixSnack.OverlayList.Motion.extend({initialize:function(a,b,c,d){this._$target=a,this._$ul=b,this._$items=c,this._options=d,this._totalLength=this._$items.length,this._selectIdx=this._options.defaultIndex,this._currentPos=0,this._growProp="horizontal"===this._options.axis?"growX":"growY",this._setSize(),this._arrangeItems(this._selectIdx),this._setWaiArea(this._selectIdx)},next:function(a,b){b&&!this._isGradualIndex(a)&&this._arrangeItems(a,"next"),this._overlayItem(a,"next")},prev:function(a,b){b&&!this._isGradualIndex(a)&&this._arrangeItems(a,"prev"),this._overlayItem(a,"prev")},none:function(){this._overlayItem(this._selectIdx,"none")},move:function(a){this._touchMove(a[this._growProp])},displacement:function(){return this._currentPos/this._itemSize},resize:function(){this._setSize(),this._arrangeItems(this._selectIdx)},_overlayItem:function(a,c){a=this.correctSelectIdx(a);var d,e,f=0,g={idx:a,isSilent:!1,moveType:c},h=b.bind(this._overlayComplete,this);"next"===c?(f=-this._itemSize,d=h):"prev"===c?(f=this._itemSize,e=h):this._options.loop||0!==this._selectIdx?e=h:d=h,this._prevIdx>-1&&ixSnack.move(this._$prev,f+"px",this._options,e,g),this._nextIdx>-1&&ixSnack.move(this._$next,f+"px",this._options,d,g),this._currentPos=f},_overlayComplete:function(a){"none"!==a.data.moveType&&this._arrangeItems(a.data.idx),ixSnack.OverlayList.Motion.prototype._overlayComplete.call(this,a),this._currentPos=0},_touchMove:function(a){var b=a+this._currentPos;-this._itemSize>b?b=-this._itemSize:this._itemSize-1&&this._$ul.append(this._$prev.css(f,"0px").show()),this._$center.css(f,this._itemSize+"px").show(),e>-1&&this._$ul.append(this._$next.css(f,2*this._itemSize+"px").show()),ixSnack.moveTo(this._$prev,"0px",this._options),ixSnack.moveTo(this._$center,"0px",this._options),ixSnack.moveTo(this._$next,"0px",this._options),this._$items.filter(function(a){return d!==a&&e!==a&&c!==a}).hide(),this._$ul.css(f,-this._itemSize+"px"),this._centerIdx=c,this._prevIdx=d,this._nextIdx=e},_getPrevIdx:function(a,b){var c=b?"next"===b?-1:a:a-1;return"next"===b?c:this._options.loop?this.correctSelectIdx(c):c},_getNextIdx:function(a,b){var c=b?"prev"===b?-1:a:a+1;return"prev"===b?c:this._options.loop?this.correctSelectIdx(c):c},_getCenterIdx:function(a,b){return b?this._selectIdx:a},_isGradualIndex:function(a){return 1===Math.abs(a-this._selectIdx)},_setSize:function(){if(this._totalLength){var a,b,c={},d={},e=this._getItemMargins(),f=e[0]+e[1];this._itemSize=this._getItemSize(),this._options.includeMargin||(this._itemSize+=f),"horizontal"===this._options.axis?(a="width",b=["marginLeft","marginRight"]):(a="height",b=["marginTop","marginBottom"]),d[a]=3*this._itemSize+100+"px",c[a]=this._itemSize-f+"px",c[b[0]]=e[0]+"px",c[b[1]]=e[1]+"px",this._$items.css(c),this._$ul.css(d)}}},"ixSnack.OverlayList.SlideMotion"),ixSnack.OverlayList.MaskMotion=ixSnack.OverlayList.Motion.extend({initialize:function(a,b,c,d){this._$target=a,this._$ul=b,this._$items=c,this._options=d,this._totalLength=this._$items.length,this._selectIdx=this._options.defaultIndex,this._currentPos=0,this._positionProp="horizontal"===this._options.axis?"right":"bottom",this._growProp="horizontal"===this._options.axis?"growX":"growY",this._setSize(),this._arrangeItems(this._selectIdx),this._setWaiArea(this._selectIdx)},next:function(a,b){b&&!this._isGradualIndex(a)&&this._arrangeItems(a,"next"),this._overlayItem(a,"next")},prev:function(a,b){b&&!this._isGradualIndex(a)&&this._arrangeItems(a,"prev"),this._overlayItem(a,"prev")},none:function(){this._overlayItem(this._selectIdx,"none")},move:function(a){this._touchMove(a[this._growProp])},displacement:function(){return this._currentPos/this._itemSize},resize:function(){this._$items.children().css({width:"",height:""}),this._setSize(),this._arrangeItems(this._selectIdx)},clear:function(){ixSnack.OverlayList.Motion.prototype.clear.call(this),this._$items.children().css({right:"",bottom:"",width:"",height:""})},_overlayItem:function(a,c){a=this.correctSelectIdx(a);var d=0,e={idx:a,isSilent:!1,moveType:c},f=b.bind(this._overlayComplete,this);"next"===c?d=-this._itemSize:"prev"===c&&(d=this._itemSize),this._size(d,f,e,!0)},_overlayComplete:function(a){"none"!==a.data.moveType&&this._arrangeItems(a.data.idx),ixSnack.OverlayList.Motion.prototype._overlayComplete.call(this,a),this._currentPos=0},_touchMove:function(a){var b=a+this._currentPos;-this._itemSize>b?b=-this._itemSize:this._itemSize-1&&ixSnack.size(this._$prev,e,this._options,j,c,l),ixSnack.size(this._$center,f,this._options,i,c,l),this._nextIdx>-1&&ixSnack.size(this._$next,g,this._options,h,c,l),this._currentPos=a},_correctPercent:function(a){return a<0?a=0:a>100&&(a=100),a},_arrangeItems:function(c,d){var e=this._getPrevIdx(c,d),f=this._getCenterIdx(c,d),g=this._getNextIdx(c,d);this._$prev=this._$items.eq(e),this._$center=this._$items.eq(f),this._$next=this._$items.eq(g),this._$items.each(b.bind(function(b,c){if(e!==b||g!==b||f!==b){var d=a(c).hide();ixSnack.size(d,"100%",this._options,null,null,!0)}},this)),e>-1&&this._setActiveItem(this._$prev,"close"),this._setActiveItem(this._$center,"open"),g>-1&&this._setActiveItem(this._$next,"close"),this._prevIdx=e,this._centerIdx=f,this._nextIdx=g},_setActiveItem:function(a,b){ixSnack.size(a,"open"===b?"100%":"0%",this._options,null,null,!0),this._$ul.append(a),a.show()},_setChildrenStyle:function(a,b,c){var d={};c<0?d[this._positionProp]="next"===b?0:"":c>0&&(d[this._positionProp]="prev"===b?"":0),a.children().css(d)},_getPrevIdx:function(a,b){var c=b?"next"===b?-1:a:a-1;return"next"===b?c:this._options.loop?this.correctSelectIdx(c):c},_getNextIdx:function(a,b){var c=b?"prev"===b?-1:a:a+1;return"prev"===b?c:this._options.loop?this.correctSelectIdx(c):c},_getCenterIdx:function(a,b){return b?this._selectIdx:a},_isGradualIndex:function(a){return 1===Math.abs(a-this._selectIdx)},_getChildrenSize:function(){var a;return a="horizontal"===this._options.axis?"outerWidth":"outerHeight",this._$items.eq(this._selectIdx).children()[a]()},_setSize:function(){if(this._totalLength){var a,b={};this._itemSize=this._getItemSize(),a="horizontal"===this._options.axis?"width":"height",b[a]=this._getChildrenSize()+"px",this._$items.children().css(b)}}},"ixSnack.OverlayList.MaskMotion"),ixSnack.BaseSlider=b.Class.extend({initialize:function(a,b,c){this._$icon=a,this._$input=b,this._options=c||{},this._disabled=!1,this._offsetProp="horizontal"===this._options.axis?"left":"top"},setEvents:function(){return this._inputKeyHandler=b.bind(function(a){switch(a.type){case"keydown":if(this._isPermissionKeyCode(a.which)){if(this._isEnterKey(a.which)){var b=this._value;this._setInputValue(!1,!0,!0),b!=this._value&&this.value(this._value,!1,!0)}}else a.preventDefault();break;case"focusin":this._setInputValue(!0,!1,!0);break;case"focusout":var b=this._value;this._setInputValue(!1,!0,!0),b!=this._value&&this.value(this._value,!1,!0)}},this),this._iconKeyHandler=b.bind(function(a){if(!this._disabled){var b=this._getArrowKeyType(a.which);b&&a.preventDefault(),"forward"===b?this.value(this._value+this._options.gap,!1,!0):"backward"===b&&this.value(this._value-this._options.gap,!1,!0)}},this),this._$input.on("keydown focusin focusout",this._inputKeyHandler),this._$icon.on("keydown",this._iconKeyHandler),this},type:function(a){return a?(this._type=a,this):this._type},min:function(a,b){return"number"==typeof a?(this._min=a,this._moveMin="number"==typeof b?b:a,this):this._min},max:function(a,b){return"number"==typeof a?(this._max=a,this._moveMax="number"==typeof b?b:a,this):this._max},value:function(a,b,c){if("number"==typeof a){if(!isNaN(a)){var d="boolean"!=typeof c||c;this._options.correctEndpoint&&b||this._options.snap?this._value=this._valueToGapValue(a):this._value=this._correctMoveValue(a),this._setInputValue(!0,d,!1),this._move(this._valueToPercent(this._value),b,c)}return this}return this._valueToGapValue(this._value)},percent:function(a,b){return"number"==typeof a?(a=this._correctPercent(a),this.value(this._percentToValue(a),b),this):this._percent},enable:function(){return this._disabled=!1,this._$icon.removeClass("disabled"),this._$input.attr("disabled",!1),this},disable:function(){return this._disabled=!0,this._$icon.addClass("disabled"),this._$input.attr("disabled",!0),this},focus:function(){return this._$icon.focus(),this},clear:function(){return this._removeEvents(),this},isDisabled:function(){return this._disabled},dispatch:function(a,c){return b.Class.prototype.dispatch.call(this,a,{value:this.value(),currentValue:this._value,isUserInput:c}),this},_move:function(a,c,d){var e={},f="horizontal"===this._options.axis?a:100-a;e[this._offsetProp]=f+"%",this._percent=f,c?(this._$icon.stop().animate(e,this._options.duration,b.bind(function(){this.dispatch("change",d)},this)),this._options.correctEndpoint&&this._options.duration&&this.dispatch("mouseup")):(this._$icon.stop().css(e),this.dispatch("change",d))},_correctValue:function(a){return athis._max&&(a=this._max),a},_correctMoveValue:function(a){return athis._moveMax&&(a=this._moveMax),a},_correctPercent:function(a){return a<0?a=0:a>100&&(a=100),a},_setInputValue:function(a,b,c){var d=this._value;a||(d=this._$input.val(),this._isNumber(d)||(d=this._value));var e=this._valueToGapValue(d),f=e;b&&(f=this._options.addFirstStr+this._valueToNumberFormat(f)+this._options.addLastStr),this._$input.val(f),c&&(this._value=this._correctMoveValue(e))},_valueToGapValue:function(a){var b=Math.round(a/this._options.gap)*this._options.gap,c=b+this._options.gap,d=b-this._options.gap,e=0;return this._options.gap?c>this._options.max&&ba&&(e=this._min-b)&&(b+=Math.round((a-b)/e)*e):b=a,this._correctValue(b)},_percentToValue:function(a){return a/100*(this._options.max-this._options.min)+this._options.min},_valueToPercent:function(a){return(a-this._options.min)/(this._options.max-this._options.min)*100},_valueToNumberFormat:function(a){return this._options.numberFixed&&(a=Number(a).toFixed(this._options.numberFixed)),this._options.numberFormat&&(a=b.string.numberFormat(a),this._options.currencyFormat&&(a=this._getCurrencyFormat(a,this._options.currencyFormat))),a},_getCurrencyFormat:function(a,b){switch(b){case"de":case"es":case"nl":case"it":case"be":a=a.replace(/[.,]/g,function(a){return","===a?".":","});break;case"no":case"fr":case"sk":case"pl":a=a.replace(/[.,]/g,function(a){return","===a?" ":","})}return a},_isPermissionKeyCode:function(a){return!!b.ua.ANDROID||(a>47&&a<58||a>95&&a<106||8==a||9==a||16==a||46==a||this._isEnterKey(a)||189==a||109==a||190==a||110==a||this._getArrowKeyType(a))},_getArrowKeyType:function(a){var b=void 0;return 37==a||40==a?b="backward":38!=a&&39!=a||(b="forward"),b},_isNumber:function(a){var b=Number(a);return"number"==typeof b&&!isNaN(b)},_isEnterKey:function(a){return 13==a},_removeEvents:function(){this._$input.off("keydown focusin focusout",this._inputKeyHandler),this._$icon.off("keydown",this._iconKeyHandler)}},"ixSnack.BaseSlider"),ixSnack.Slider=ixSnack.BaseClass.extend({initialize:function(a){this._$target=a,this._$input=this._$target.find(".ix-input"),this._$icon=this._$target.find(".ix-icon"),this._$slideBar=this._$target.find(".ix-slider-bar"),this._$progress=this._$target.find(".ix-progress"),this._options=ixSnack.getOptions(this._$target.attr("data-ix-options")),this._currentPer=0,this._disabled=!1,this._isInit=!1,this._isMouseDown=!1,this._isMouseUp=!1,this._setOptions(),this._setEvents(),this._setProgress(),this._options.disable&&this.disable(),this._dispatch("init",!1)},changeValue:function(a){a&&this._slider.value(this._correctValue(a))},getValue:function(){return this._slider.value()},enable:function(){this._slider.enable(),this._$target.removeClass("disabled"),this._disabled=!1,this._setTouchAction("horizontal"===this._options.axis?"pan-y":"pan-x")},disable:function(){this._slider.disable(),this._$target.addClass("disabled"),this._disabled=!0,this._setTouchAction("auto")},clear:function(){this._removeEvents(),this.enable(),this._gAxis&&this._gAxis.clear(),this._slider&&this._slider.clear(),ixSnack.removePlugin(this._$target,"slider")},_setOptions:function(){this._options.maxthis._options.max-this._options.min&&(this._options.gap=this._options.max-this._options.min),"horizontal"===this._options.axis?(this._offsetProp="left",this._posProp="pageX",this._sizeProp="width"):(this._offsetProp="top",this._posProp="pageY",this._sizeProp="height"),"number"!=typeof this._options.value&&(this._options.value=this._options.min),this._options.value=this._correctValue(this._options.value)},_setEvents:function(){this._onTouch=b.bind(this._touchHandler,this),this._onDrag=b.bind(this._dragHandler,this),this._slider=new ixSnack.BaseSlider(this._$icon,this._$input,this._options),this._slider.addListener("change",b.bind(function(a){var b=this._isChangeValue(a.value);this._value=a.value,this._currentPer=this._slider.percent(),this._setProgress(),a.isUserInput&&this._dispatch("slideStart",!0),b&&this._dispatch("change",a.isUserInput||this._isMouseDown),(this._isMouseUp||a.isUserInput)&&this._dispatch("slideEnd",!0)},this)).addListener("mouseup",b.bind(function(a){this._currentPer=this._slider.percent(),this._setProgress(!0)},this)).min(this._options.min).max(this._options.max).value(this._options.value).setEvents(),b.ua.TOUCH_DEVICE?(this._touchEvent=new b.event.TouchEvent(this._$slideBar),this._docTouchEvent=new b.event.TouchEvent(document),ixSnack.MS_POINTER?(this._setTouchAction("horizontal"===this._options.axis?"pan-y":"pan-x"),this._touchEvent.addListener("touchstart",this._onTouch)):(this._gAxis=new b.event.GestureAxis(this._$slideBar,{aType:this._options.axis,preventDefault:"vertical"===this._options.axis&&b.ua.SAFARI&&parseFloat(b.ua.VERSION)>9}).addListener("axis",this._onTouch),this._$slideBar.on("mousedown",this._onDrag))):this._$slideBar.on("mousedown",this._onDrag)},_touchHandler:function(a){if(!this._disabled){var b=0;switch("axis"!=a.type&&(a.preventDefault(),a.stopPropagation()),a.type){case"axis":case"touchstart":this._docTouchEvent.addListener("touchmove",this._onTouch,{passive:!1}),this._docTouchEvent.addListener("touchend",this._onTouch),this._docTouchEvent.addListener("touchcancel",this._onTouch),b=this._pxToPercent(this._getEventPos(a)),this._isMouseDown=!0,this._dispatch("slideStart",!0),this._slider.focus().percent(b);break;case"touchcancel":case"touchend":this._isMouseUp=!0,this._docTouchEvent.removeListener(),b="horizontal"===this._options.axis?this._currentPer:100-this._currentPer,this._slider.percent(b,!0);break;case"touchmove":this._slider.percent(this._pxToPercent(this._getEventPos(a)))}}},_dragHandler:function(b){if(!this._disabled){b.preventDefault(),b.stopPropagation();var c=this._pxToPercent(this._getEventPos(b));switch(b.type){case"mousedown":this._isMouseDown=!0,a(document).on("mousemove",this._onDrag),a(document).on("mouseup",this._onDrag),this._dispatch("slideStart",!0),this._slider.focus().percent(c);break;case"mouseup":this._isMouseUp=!0,a(document).off("mousemove",this._onDrag),a(document).off("mouseup",this._onDrag),this._slider.percent(c,!0);break;case"mousemove":this._slider.percent(c)}}},_setProgress:function(a){if(this._slider){var b={},c=this._slider.percent(),d="horizontal"===this._options.axis?c:100-c,e="horizontal"===this._options.axis?0:c;b[this._sizeProp]=d+"%",b[this._offsetProp]=e+"%",a&&this._options.correctEndpoint&&this._options.duration?this._$progress.stop().animate(b,this._options.duration):this._$progress.stop().css(b)}},_isChangeValue:function(a){return this._value!==a},_setTouchAction:function(a){b.ua.TOUCH_DEVICE&&b.ua.WINDOWS&&(this._$slideBar.css({"-ms-touch-action":a,"touch-action":a}),"auto"==a?this._$slideBar.off("dragstart",this._dragStartHandler):this._$slideBar.on("dragstart",this._dragStartHandler))},_dragStartHandler:function(a){a.preventDefault()},_correctValue:function(a){return athis._options.max&&(a=this._options.max),a},_removeEvents:function(){this._docTouchEvent&&this._docTouchEvent.clear(),this._touchEvent&&this._touchEvent.clear(),this._setTouchAction("auto"),this._$slideBar.off("mousedown",this._onDrag),a(document).off("mousemove mouseup",this._onDrag)},_getEventPos:function(a){var b=this._$slideBar.offset()[this._offsetProp];return"axis"===a.type||a.type.indexOf("touch")===-1?a[this._posProp]-b:a.touches[0][this._posProp]-b},_pxToPercent:function(a){var b=a/this._$slideBar[this._sizeProp]()*100;return"horizontal"===this._options.axis?b:100-b},_dispatch:function(a,b){if("init"===a)this._isInit=!0;else if(!this._isInit)return;"slideEnd"===a&&(this._isMouseDown=!1,this._isMouseUp=!1),this._$target.triggerHandler({type:"ixSlider:"+a,value:this.getValue(),userInteraction:b})}},"ixSnack.Slider"),ixSnack.RangeSlider=ixSnack.BaseClass.extend({initialize:function(a){this._$target=a,this._$minInput=this._$target.find(".ix-min-input"),this._$maxInput=this._$target.find(".ix-max-input"),this._$minIcon=this._$target.find(".ix-min-icon"),this._$maxIcon=this._$target.find(".ix-max-icon"),this._$slideBar=this._$target.find(".ix-slider-bar"),this._$progress=this._$target.find(".ix-progress"),this._options=ixSnack.getOptions(this._$target.attr("data-ix-options")),this._currentPer=0,this._disabled=!1,this._isInit=!1,this._isMouseDown=!1,this._isMouseUp=!1,this._setOptions(),this._setEvents(),this._setProgress(),"string"==typeof this._options.disable?this.disable(this._options.disable):this._options.disable&&this.disable(),this._dispatch("init",!1)},changeValues:function(a){if(b.isArray(a)&&2===a.length){var c=this._correctValues(a);this._minSlider.max(c[1]).value(c[0]),this._maxSlider.min(c[0]).value(c[1])}},getValues:function(){return[this._minSlider.value(),this._maxSlider.value()]},enable:function(a){a&&"min"!==a||this._minSlider.enable(),a&&"max"!==a||this._maxSlider.enable(),this._minSlider.isDisabled()||this._maxSlider.isDisabled()||(this._$target.removeClass("disabled"),this._disabled=!1),this._setTouchAction("horizontal"===this._options.axis?"pan-y":"pan-x")},disable:function(a){a&&"min"!==a||this._minSlider.disable(),a&&"max"!==a||this._maxSlider.disable(),this._minSlider.isDisabled()&&this._maxSlider.isDisabled()&&(this._$target.addClass("disabled"),this._disabled=!0,this._setTouchAction("auto"))},clear:function(){this._removeEvents(),this.enable(),this._gAxis&&this._gAxis.clear(),this._minSlider&&this._minSlider.clear(),this._maxSlider&&this._maxSlider.clear(),ixSnack.removePlugin(this._$target,"range-slider")},_setOptions:function(){this._options.values&&this._options.values.length>1?this._options.values=[this._options.values[0].value,this._options.values[1].value]:this._options.values=[this._options.min,this._options.max],this._options.maxthis._options.max-this._options.min&&(this._options.gap=this._options.max-this._options.min),"horizontal"===this._options.axis?(this._offsetProp="left",this._posProp="pageX",this._sizeProp="width"):(this._offsetProp="top",this._posProp="pageY",this._sizeProp="height"),this._options.values=this._correctValues(this._options.values)},_correctValues:function(a){var b=a[0],c=a[1];return bthis._options.max&&(c=this._options.max),b>c&&(b=c),[b,c]},_setEvents:function(){this._onTouch=b.bind(this._touchHandler,this),this._onDrag=b.bind(this._dragHandler,this),this._minSlider=new ixSnack.BaseSlider(this._$minIcon,this._$minInput,this._options),this._minSlider.addListener("change",b.bind(function(a){var b=this._isChangeValue(a.value,this._maxValue);this._minValue=a.value,this._currentPer=this._minSlider.percent(),this._setProgress(),a.isUserInput&&this._dispatch("slideStart",!0,this._minSlider.type()),this._maxSlider&&this._maxSlider.min(a.value,a.currentValue),b&&this._dispatch("change",a.isUserInput||this._isMouseDown,this._minSlider.type()),(this._isMouseUp||a.isUserInput)&&this._dispatch("slideEnd",!0,this._minSlider.type())},this)).addListener("mouseup",b.bind(function(a){this._currentPer=this._minSlider.percent(),this._setProgress(!0)},this)).type("min").min(this._options.min).max(this._options.values[1]).value(this._options.values[0]).setEvents(),this._maxSlider=new ixSnack.BaseSlider(this._$maxIcon,this._$maxInput,this._options),this._maxSlider.addListener("change",b.bind(function(a){var b=this._isChangeValue(this._minValue,a.value);this._maxValue=a.value,this._currentPer=this._maxSlider.percent(),this._setProgress(),a.isUserInput&&this._dispatch("slideStart",!0,this._maxSlider.type()),this._minSlider&&this._minSlider.max(a.value,a.currentValue),b&&this._dispatch("change",a.isUserInput||this._isMouseDown,this._maxSlider.type()),(this._isMouseUp||a.isUserInput)&&this._dispatch("slideEnd",!0,this._maxSlider.type()) },this)).addListener("mouseup",b.bind(function(a){this._currentPer=this._maxSlider.percent(),this._setProgress(!0)},this)).type("max").min(this._options.values[0]).max(this._options.max).value(this._options.values[1]).setEvents(),b.ua.TOUCH_DEVICE?(this._touchEvent=new b.event.TouchEvent(this._$slideBar),this._docTouchEvent=new b.event.TouchEvent(document),ixSnack.MS_POINTER?(this._setTouchAction("horizontal"===this._options.axis?"pan-y":"pan-x"),this._touchEvent.addListener("touchstart",this._onTouch)):(this._gAxis=new b.event.GestureAxis(this._$slideBar,{aType:this._options.axis,preventDefault:"vertical"===this._options.axis&&b.ua.SAFARI&&parseFloat(b.ua.VERSION)>9}).addListener("axis",this._onTouch),this._$slideBar.on("mousedown",this._onDrag))):this._$slideBar.on("mousedown",this._onDrag)},_touchHandler:function(a){if(!this._disabled)switch("axis"!=a.type&&(a.preventDefault(),a.stopPropagation()),a.type){case"axis":case"touchstart":this._docTouchEvent.addListener("touchmove",this._onTouch,{passive:!1}),this._docTouchEvent.addListener("touchend",this._onTouch),this._docTouchEvent.addListener("touchcancel",this._onTouch);var b=this._pxToPercent(this._getEventPos(a));this._isMouseDown=!0,this._activeSlider=this._getNearSlider(b),this._dispatch("slideStart",!0,this._activeSlider.type()),this._activeSlider.percent(b);break;case"touchcancel":case"touchend":this._isMouseUp=!0,this._docTouchEvent.removeListener();var b="horizontal"===this._options.axis?this._currentPer:100-this._currentPer;this._activeSlider.percent(b,!0);break;case"touchmove":this._activeSlider.percent(this._pxToPercent(this._getEventPos(a)))}},_dragHandler:function(b){if(!this._disabled){b.preventDefault(),b.stopPropagation();var c=this._pxToPercent(this._getEventPos(b));switch(b.type){case"mousedown":this._isMouseDown=!0,a(document).on("mousemove",this._onDrag),a(document).on("mouseup",this._onDrag),this._activeSlider=this._getNearSlider(c),this._dispatch("slideStart",!0,this._activeSlider.type()),this._activeSlider.percent(c);break;case"mouseup":this._isMouseUp=!0,a(document).off("mousemove",this._onDrag),a(document).off("mouseup",this._onDrag),this._activeSlider.percent(c,!0);break;case"mousemove":this._activeSlider.percent(c)}}},_setProgress:function(a){if(this._minSlider&&this._maxSlider){var b,c,d={};"horizontal"===this._options.axis?(b=this._minSlider.percent(),c=this._maxSlider.percent()):(b=this._maxSlider.percent(),c=this._minSlider.percent()),d[this._offsetProp]=b+"%",d[this._sizeProp]=c-b+"%",a&&this._options.correctEndpoint&&this._options.duration?this._$progress.stop().animate(d,this._options.duration):this._$progress.stop().css(d)}},_isChangeValue:function(a,b){return this._minValue!=a||this._maxValue!=b},_setTouchAction:function(a){b.ua.TOUCH_DEVICE&&b.ua.WINDOWS&&(this._$slideBar.css({"-ms-touch-action":a,"touch-action":a}),"auto"==a?this._$slideBar.off("dragstart",this._dragStartHandler):this._$slideBar.on("dragstart",this._dragStartHandler))},_dragStartHandler:function(a){a.preventDefault()},_removeEvents:function(){this._docTouchEvent&&this._docTouchEvent.clear(),this._touchEvent&&this._touchEvent.clear(),this._setTouchAction("auto"),this._$slideBar.off("mousedown",this._onDrag),a(document).off("mousemove mouseup",this._onDrag)},_getEventPos:function(a){var b=this._$slideBar.offset()[this._offsetProp];return"axis"===a.type||a.type.indexOf("touch")===-1?a[this._posProp]-b:a.touches[0][this._posProp]-b},_pxToPercent:function(a){var b=a/this._$slideBar[this._sizeProp]()*100;return"horizontal"===this._options.axis?b:100-b},_getNearSlider:function(a){var b=this._minSlider,c=this._minSlider.percent(),d=this._maxSlider.percent(),e="horizontal"===this._options.axis?a:100-a,f=Math.abs(c-e),g=Math.abs(d-e);return this._minSlider.isDisabled()||this._maxSlider.isDisabled()?this._minSlider.isDisabled()&&(b=this._maxSlider):f===g?"horizontal"===this._options.axis?this._currentPere&&(b=this._maxSlider):f>g&&(b=this._maxSlider),b.focus()},_dispatch:function(a,b,c){if("init"===a)this._isInit=!0;else if(!this._isInit)return;"slideEnd"===a&&(this._isMouseDown=!1,this._isMouseUp=!1),this._$target.triggerHandler({type:"ixRangeSlider:"+a,values:this.getValues(),userInteraction:b,currentType:c})}},"ixSnack.RangeSlider")}(jQuery,ixBand); \ No newline at end of file diff --git a/package.json b/package.json index 45da0df..bc38163 100644 --- a/package.json +++ b/package.json @@ -1,7 +1,7 @@ { "name": "ixSnack", "version": "0.4", - "buildVersion": "0.4.1", + "buildVersion": "0.4.2", "description": "ixSnack.js Development.", "main": "bin/main.js", "dependencies": {}, diff --git a/src/ThumbController.js b/src/ThumbController.js index 36c6e11..d860a1b 100644 --- a/src/ThumbController.js +++ b/src/ThumbController.js @@ -63,7 +63,7 @@ ixSnack.ThumbController = $B.Class.extend({ clear: function () { this._$prevBtn.off( 'click', this._directionHandler ); this._$nextBtn.off( 'click', this._directionHandler ); - this._$thumbs.off( 'click', 'a.ix-btn', this._thumbHandler ); + this._$thumbs.off( 'click', '.ix-btn', this._thumbHandler ); this._$thumbArea.html( this._thumbHtml ); this._$controller.removeClass( 'disabled' ); this._$prevBtn.removeClass( 'disabled' ).removeAttr( 'aria-disabled' ); @@ -99,7 +99,7 @@ ixSnack.ThumbController = $B.Class.extend({ this._$prevBtn.on( 'click', this._directionHandler ); this._$nextBtn.on( 'click', this._directionHandler ); - this._$thumbs.on( 'click', 'a.ix-btn', this._thumbHandler ); + this._$thumbs.on( 'click', '.ix-btn', this._thumbHandler ); }, //좌우화살표 상태 처리