@egjs/flicking 4.16.1-beta.0 → 4.16.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/flicking.cjs.js +1 -1
- package/dist/flicking.esm.js +1 -1
- package/dist/flicking.js +1 -1
- package/dist/flicking.min.js +1 -1
- package/dist/flicking.min.js.map +1 -1
- package/dist/flicking.pkgd.js +1 -1
- package/dist/flicking.pkgd.min.js +1 -1
- package/dist/flicking.pkgd.min.js.map +1 -1
- package/package.json +1 -1
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).Flicking=t()}(this,function(){"use strict";var e=Object.defineProperty,t=Object.defineProperties,n=Object.getOwnPropertyDescriptors,i=Object.getOwnPropertySymbols,r=Object.getPrototypeOf,s=Object.prototype.hasOwnProperty,o=Object.prototype.propertyIsEnumerable,a=Reflect.get,l=Math.pow,h=(t,n,i)=>n in t?e(t,n,{enumerable:!0,configurable:!0,writable:!0,value:i}):t[n]=i,c=(e,t)=>{for(var n in t||(t={}))s.call(t,n)&&h(e,n,t[n]);if(i)for(var n of i(t))o.call(t,n)&&h(e,n,t[n]);return e},u=(e,i)=>t(e,n(i)),d=(e,t,n)=>new Promise((i,r)=>{var s=e=>{try{a(n.next(e))}catch(t){r(t)}},o=e=>{try{a(n.throw(e))}catch(t){r(t)}},a=e=>e.done?i(e.value):Promise.resolve(e.value).then(s,o);a((n=n.apply(e,t)).next())});function g(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var i,r,s=n.call(e),o=[];try{for(;(void 0===t||t-- >0)&&!(i=s.next()).done;)o.push(i.value)}catch(a){r={error:a}}finally{try{i&&!i.done&&(n=s.return)&&n.call(s)}finally{if(r)throw r.error}}return o}function _(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(g(arguments[t]));return e}var f=function(e){return void 0===e},p=function(){function e(e,t){var n,i;if(this._canceled=!1,t)try{for(var r=function(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],i=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&i>=e.length&&(e=void 0),{value:e&&e[i++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}(Object.keys(t)),s=r.next();!s.done;s=r.next()){var o=s.value;this[o]=t[o]}}catch(a){n={error:a}}finally{try{s&&!s.done&&(i=r.return)&&i.call(r)}finally{if(n)throw n.error}}this.eventType=e}var t=e.prototype;return t.stop=function(){this._canceled=!0},t.isCanceled=function(){return this._canceled},e}(),v=function(){function e(){this._eventHandler={}}var t=e.prototype;return t.trigger=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];var i=e instanceof p?e.eventType:e,r=_(this._eventHandler[i]||[]);return r.length<=0||(e instanceof p?(e.currentTarget=this,r.forEach(function(t){t(e)})):r.forEach(function(e){e.apply(void 0,_(t))})),this},t.once=function(e,t){var n=this;if("object"==typeof e&&f(t)){var i=e;for(var r in i)this.once(r,i[r]);return this}if("string"==typeof e&&"function"==typeof t){var s=function(){for(var i=[],r=0;r<arguments.length;r++)i[r]=arguments[r];t.apply(void 0,_(i)),n.off(e,s)};this.on(e,s)}return this},t.hasOn=function(e){return!!this._eventHandler[e]},t.on=function(e,t){if("object"==typeof e&&f(t)){var n=e;for(var i in n)this.on(i,n[i]);return this}if("string"==typeof e&&"function"==typeof t){var r=this._eventHandler[e];f(r)&&(this._eventHandler[e]=[],r=this._eventHandler[e]),r.push(t)}return this},t.off=function(e,t){if(f(e))return this._eventHandler={},this;if(f(t)){if("string"==typeof e)return delete this._eventHandler[e],this;var n=e;for(var i in n)this.off(i,n[i]);return this}var r=this._eventHandler[e];if(r)for(var s=r.length,o=0;o<s;++o)if(r[o]===t){r.splice(o,1),s<=1&&delete this._eventHandler[e];break}return this},e.VERSION="3.0.5",e}(),m=p;const E={PREV:"prev",CENTER:"center",NEXT:"next"},x={PREV:"PREV",NEXT:"NEXT",NONE:null},P={SNAP:"snap",FREE_SCROLL:"freeScroll",STRICT:"strict"},b={VIEWPORT:"flicking-viewport",CAMERA:"flicking-camera",VERTICAL:"vertical",HIDDEN:"flicking-hidden",DEFAULT_VIRTUAL:"flicking-panel"},y={LINEAR:"linear",BOUND:"bound"},O={LTR:"ltr",RTL:"rtl"},T={HORIZONTAL:"horizontal",VERTICAL:"vertical"},R=Object.freeze(Object.defineProperty({__proto__:null,ALIGN:E,CIRCULAR_FALLBACK:y,CLASS:b,DIRECTION:x,MOVE_DIRECTION:T,MOVE_TYPE:P,ORDER:O},Symbol.toStringTag,{value:"Module"})),I={READY:"ready",BEFORE_RESIZE:"beforeResize",AFTER_RESIZE:"afterResize",HOLD_START:"holdStart",HOLD_END:"holdEnd",MOVE_START:"moveStart",MOVE:"move",MOVE_END:"moveEnd",WILL_CHANGE:"willChange",CHANGED:"changed",WILL_RESTORE:"willRestore",RESTORED:"restored",SELECT:"select",NEED_PANEL:"needPanel",VISIBLE_CHANGE:"visibleChange",REACH_EDGE:"reachEdge",PANEL_CHANGE:"panelChange"},w=Object.freeze(Object.defineProperty({__proto__:null,EVENTS:I},Symbol.toStringTag,{value:"Module"}));class A{get index(){return this._index}get position(){return this._pos}get panel(){return this._panel}constructor(e){const{index:t,position:n,panel:i}=e;this._index=t,this._pos=n,this._panel=i}}const S={WRONG_TYPE:{code:0,message:(e,t)=>`${e}(${typeof e}) is not a ${t.map(e=>`"${e}"`).join(" or ")}.`},ELEMENT_NOT_FOUND:{code:1,message:e=>`Element with selector "${e}" not found.`},VAL_MUST_NOT_NULL:{code:2,message:(e,t)=>`${t} should be provided. Given: ${e}`},NOT_ATTACHED_TO_FLICKING:{code:3,message:'This module is not attached to the Flicking instance. "init()" should be called first.'},WRONG_OPTION:{code:4,message:(e,t)=>`Option "${e}" is not in correct format, given: ${t}`},INDEX_OUT_OF_RANGE:{code:5,message:(e,t,n)=>`Index "${e}" is out of range: should be between ${t} and ${n}.`},POSITION_NOT_REACHABLE:{code:6,message:e=>`Position "${e}" is not reachable.`},TRANSFORM_NOT_SUPPORTED:{code:7,message:"Browser does not support CSS transform."},STOP_CALLED_BY_USER:{code:8,message:"Event stop() is called by user."},ANIMATION_INTERRUPTED:{code:9,message:"Animation is interrupted by user input."},ANIMATION_ALREADY_PLAYING:{code:10,message:"Animation is already playing."},NOT_ALLOWED_IN_FRAMEWORK:{code:11,message:"This behavior is not allowed in the frameworks like React, Vue, or Angular."},NOT_INITIALIZED:{code:12,message:"Flicking is not initialized yet, call init() first."},NO_ACTIVE:{code:13,message:"There's no active panel that Flicking has selected. This may be due to the absence of any panels."},NOT_ALLOWED_IN_VIRTUAL:{code:14,message:"This behavior is not allowed when the virtual option is enabled"}},C=Object.keys(S).reduce((e,t)=>(e[t]=S[t].code,e),{}),k=Object.keys(S).reduce((e,t)=>(e[t]=S[t].message,e),{}),N=(e,...t)=>(t.forEach(t=>{Object.keys(t).forEach(n=>{e[n]=t[n]})}),e),D=(e,t)=>{let n=null;if($(e)){const i=(t||document).querySelector(e);if(!i)throw new he(k.ELEMENT_NOT_FOUND(e),C.ELEMENT_NOT_FOUND);n=i}else e&&e.nodeType===Node.ELEMENT_NODE&&(n=e);if(!n)throw new he(k.WRONG_TYPE(e,["HTMLElement","string"]),C.WRONG_TYPE);return n},M=(e,t)=>{if(null==e)throw new he(k.VAL_MUST_NOT_NULL(e,t),C.VAL_MUST_NOT_NULL)},z=(e,t,n)=>Math.max(Math.min(e,n),t),L=e=>{if(!e)throw new he(k.NOT_ATTACHED_TO_FLICKING,C.NOT_ATTACHED_TO_FLICKING);return e},H=e=>[].slice.call(e),F=(e,t)=>{let n;if($(e))switch(e){case E.PREV:n=0;break;case E.CENTER:n=.5*t;break;case E.NEXT:n=t;break;default:if(n=j(e,t),null==n)throw new he(k.WRONG_OPTION("align",e),C.WRONG_OPTION)}else n=e;return n},V=(e,t)=>{let n;if(Array.isArray(e))n=e.map(e=>j(e,t));else{const i=j(e,t);n=[i,i]}return n.map(t=>{if(null==t)throw new he(k.WRONG_OPTION("bounce",e),C.WRONG_OPTION);return t})},j=(e,t)=>{const n=B(e);return null==n?null:n.percentage*t+n.absolute},B=e=>{const t=/(?:(\+|-)\s*)?(\d+(?:\.\d+)?(%|px)?)/g;if("number"==typeof e)return{percentage:0,absolute:e};const n={percentage:0,absolute:0};let i=0,r=t.exec(e);for(;null!=r;){let s=r[1];const o=r[2],a=r[3],l=parseFloat(o);if(i<=0&&(s=s||"+"),!s)return null;const h="+"===s?1:-1;"%"===a?n.percentage+=h*(l/100):n.absolute+=h*l,++i,r=t.exec(e)}return 0===i?null:n},G=e=>"object"==typeof e?e.panel:e,W=(e,t)=>e===t?x.NONE:e<t?x.NEXT:x.PREV,X=e=>{Array.isArray(e)||(e=[e]);const t=[];return e.forEach(e=>{if($(e)){const n=document.createElement("div");for(n.innerHTML=e,t.push(...H(n.children));n.firstChild;)n.removeChild(n.firstChild)}else{if(!e||e.nodeType!==Node.ELEMENT_NODE)throw new he(k.WRONG_TYPE(e,["HTMLElement","string"]),C.WRONG_TYPE);t.push(e)}}),t},U=(e,t)=>z(e<0?e+t:e,0,t),Y=(e,t)=>{for(const n of e)if(n===t)return!0;return!1},$=e=>"string"==typeof e,K=(e,t,n)=>{const i=n-t;if(e<t){e=n-(t-e)%i}else if(e>n){e=t+(e-n)%i}return e},q=(e,t)=>{for(const n of e)if(t(n))return n;return null},Z=(e,t)=>{for(let n=0;n<e.length;n++)if(t(e[n]))return n;return-1},Q=(e,t,n)=>(e-t)/(n-t),J=e=>e?window.getComputedStyle(e)||e.currentStyle:{},ee=(e,{width:t,height:n})=>{e&&(null!=t&&($(t)?e.style.width=t:e.style.width=`${t}px`),null!=n&&($(n)?e.style.height=n:e.style.height=`${n}px`))},te=(e,t,n)=>e>=t&&e<=n,ne=(e,t)=>e>=t?e%t:e<0?U((e+1)%t-1,t):e,ie=e=>{const t=new Array(e);for(let n=0;n<e;n++)t[n]=n;return t},re=({el:e,horizontal:t,useFractionalSize:n,useOffset:i,style:r})=>{let s=0;if(n){const e=parseFloat(t?r.width:r.height)||0,n="border-box"===r.boxSizing,o=t?parseFloat(r.borderLeftWidth||"0")+parseFloat(r.borderRightWidth||"0"):parseFloat(r.borderTopWidth||"0")+parseFloat(r.borderBottomWidth||"0");if(n)s=i?e:e-o;else{const n=t?parseFloat(r.paddingLeft||"0")+parseFloat(r.paddingRight||"0"):parseFloat(r.paddingTop||"0")+parseFloat(r.paddingBottom||"0");s=i?e+n+o:e+n}}else{const n=t?"Width":"Height";s=i?e[`offset${n}`]:e[`client${n}`]}return Math.max(s,0)},se=Object.setPrototypeOf||((e,t)=>(e.__proto__=t,e)),oe=e=>e.replace(/[\s-_]([a-z])/g,(e,t)=>t.toUpperCase()),ae=(e,t)=>{const n={},i=e.attributes,r=i.length;for(let s=0;s<r;++s){const e=i[s],{name:r,value:o}=e;-1!==r.indexOf(t)&&(n[oe(r.replace(t,""))]=o)}return n},le=Object.freeze(Object.defineProperty({__proto__:null,camelize:oe,checkExistence:M,circulateIndex:ne,circulatePosition:K,clamp:z,find:q,findIndex:Z,findRight:(e,t)=>{for(let n=e.length-1;n>=0;n--){const i=e[n];if(t(i))return i}return null},getDataAttributes:ae,getDirection:W,getElement:D,getElementSize:re,getFlickingAttached:L,getMinusCompensatedIndex:U,getProgress:Q,getStyle:J,includes:Y,isBetween:te,isString:$,merge:N,parseAlign:F,parseArithmeticExpression:B,parseArithmeticSize:j,parseBounce:V,parseCSSSizeValue:e=>$(e)?e:`${e}px`,parseElement:X,parsePanelAlign:G,range:ie,setPrototypeOf:se,setSize:ee,toArray:H},Symbol.toStringTag,{value:"Module"}));class he extends Error{constructor(e,t){super(e),se(this,he.prototype),this.name="FlickingError",this.code=t}}class ce{constructor(e){this._flicking=e}getAnchors(){return this._flicking.renderer.panels.map((e,t)=>new A({index:t,position:e.position,panel:e}))}findAnchorIncludePosition(e){return this._flicking.camera.anchorPoints.filter(t=>t.panel.includePosition(e,!0)).reduce((t,n)=>t&&Math.abs(t.position-e)<Math.abs(n.position-e)?t:n,null)}findNearestAnchor(e){const t=this._flicking.camera.anchorPoints;if(t.length<=0)return null;let n=1/0;for(let i=0;i<t.length;i++){const r=t[i],s=Math.abs(r.position-e);if(s>n)return t[i-1];n=s}return t[t.length-1]}clampToReachablePosition(e){const t=this._flicking.camera.range;return z(e,t.min,t.max)}getCircularOffset(){return 0}canReach(e){const t=this._flicking.camera.range;if(e.removed)return!1;const n=e.position;return n>=t.min&&n<=t.max}canSee(e){const t=this._flicking.camera.visibleRange;return e.isVisibleOnRange(t.min,t.max)}}class ue extends ce{checkAvailability(){const e=this._flicking,t=e.renderer,n=t.getPanel(0),i=t.getPanel(t.panelCount-1);if(!n||!i)return!1;const r=e.camera.size,s=n.range.min;return r<i.range.max-s}getRange(){const e=this._flicking,t=e.renderer,n=e.camera.alignPosition,i=t.getPanel(0),r=t.getPanel(t.panelCount-1);if(!i||!r)return{min:0,max:0};const s=e.camera.size,o=i.range.min,a=r.range.max,l=o+n,h=a-s+n;if(s<a-o)return{min:l,max:h};{const t=e.camera.align,n="object"==typeof t?t.camera:t,i=l+F(n,h-l);return{min:i,max:i}}}getAnchors(){const e=this._flicking,t=e.camera,n=e.renderer.panels;if(n.length<=0)return[];const i=e.camera.range,r=n.filter(e=>t.canReach(e));if(r.length>0){const e=r[0].position!==i.min,t=r[r.length-1].position!==i.max,s=e?1:0,o=r.map((e,t)=>new A({index:t+s,position:e.position,panel:e}));return e&&o.splice(0,0,new A({index:0,position:i.min,panel:n[r[0].index-1]})),t&&o.push(new A({index:o.length,position:i.max,panel:n[r[r.length-1].index+1]})),o}if(i.min!==i.max){const e=this._findNearestPanel(i.min,n),t=e.index===n.length-1?e.prev():e,r=t.next();return[new A({index:0,position:i.min,panel:t}),new A({index:1,position:i.max,panel:r})]}return[new A({index:0,position:i.min,panel:this._findNearestPanel(i.min,n)})]}findAnchorIncludePosition(e){const t=this._flicking.camera,n=t.range,i=t.anchorPoints;return i.length<=0?null:e<=n.min?i[0]:e>=n.max?i[i.length-1]:super.findAnchorIncludePosition(e)}_findNearestPanel(e,t){let n=1/0;for(let i=0;i<t.length;i++){const r=t[i],s=Math.abs(r.position-e);if(s>n)return t[i-1];n=s}return t[t.length-1]}}class de extends ce{checkAvailability(){const e=this._flicking,t=e.renderer.panels;if(t.length<=0)return!1;const n=t[0],i=t[t.length-1],r=n.range.min-n.margin.prev,s=i.range.max+i.margin.next,o=e.camera.size,a=s-r;return t.every(e=>a-e.size>=o)}getRange(){const e=this._flicking.renderer.panels;if(e.length<=0)return{min:0,max:0};const t=e[0],n=e[e.length-1];return{min:t.range.min-t.margin.prev,max:n.range.max+n.margin.next}}getAnchors(){return this._flicking.renderer.panels.map((e,t)=>new A({index:t,position:e.position,panel:e}))}findNearestAnchor(e){const t=this._flicking.camera,n=t.anchorPoints;if(n.length<=0)return null;const i=t.range;let r=1/0,s=-1;for(let o=0;o<n.length;o++){const t=n[o],a=Math.min(Math.abs(t.position-e),Math.abs(t.position-i.min+i.max-e),Math.abs(e-i.min+i.max-t.position));a<r&&(r=a,s=o)}return n[s]}findAnchorIncludePosition(e){const t=this._flicking.camera,n=t.range,i=t.anchorPoints,r=t.rangeDiff,s=i.length,o=K(e,n.min,n.max);let a=super.findAnchorIncludePosition(o);if(s>0&&(e===n.min||e===n.max)){const t=[a,new A({index:0,position:i[0].position+r,panel:i[0].panel}),new A({index:s-1,position:i[s-1].position-r,panel:i[s-1].panel})].filter(e=>!!e);a=t.reduce((t,n)=>t&&Math.abs(t.position-e)<Math.abs(n.position-e)?t:n,null)}if(!a)return null;if(e<n.min){const t=-Math.floor((n.min-e)/r)-1;return new A({index:a.index,position:a.position+r*t,panel:a.panel})}if(e>n.max){const t=Math.floor((e-n.max)/r)+1;return new A({index:a.index,position:a.position+r*t,panel:a.panel})}return a}getCircularOffset(){const e=this._flicking;if(!e.camera.circularEnabled)return 0;const t=e.panels.filter(e=>e.toggled),n=t.filter(e=>e.toggleDirection===x.PREV),i=t.filter(e=>e.toggleDirection===x.NEXT);return this._calcPanelAreaSum(n)-this._calcPanelAreaSum(i)}clampToReachablePosition(e){return e}canReach(e){return!e.removed}canSee(e){const t=this._flicking.camera,n=t.range,i=t.rangeDiff,r=t.visibleRange,s=super.canSee(e);return r.min<n.min?s||e.isVisibleOnRange(r.min+i,r.max+i):r.max>n.max?s||e.isVisibleOnRange(r.min-i,r.max-i):s}_calcPanelAreaSum(e){return e.reduce((e,t)=>e+t.sizeIncludingMargin,0)}}class ge extends ce{checkAvailability(){return!0}getRange(){var e,t;const n=this._flicking.renderer,i=n.getPanel(0),r=n.getPanel(n.panelCount-1);return{min:null!=(e=null==i?void 0:i.position)?e:0,max:null!=(t=null==r?void 0:r.position)?t:0}}}let _e=class{constructor(e,{align:t=E.CENTER}={}){this._lookedOffset=0,this._checkTranslateSupport=()=>{const e=["webkitTransform","msTransform","MozTransform","OTransform","transform"],t=document.documentElement.style;let n="";for(const i of e)i in t&&(n=i);if(!n)throw new he(k.TRANSFORM_NOT_SUPPORTED,C.TRANSFORM_NOT_SUPPORTED);this._transform=n},this._flicking=e,this._resetInternalValues(),this._align=t}get element(){return this._el}get children(){return H(this._el.children)}get position(){return this._position}get alignPosition(){return this._alignPos}get offset(){return this._offset-this._circularOffset}get circularEnabled(){return this._circularEnabled}get mode(){return this._mode}get range(){return this._range}get rangeDiff(){return this._range.max-this._range.min}get visiblePanels(){return this._visiblePanels}get visibleRange(){return{min:this._position-this._alignPos,max:this._position-this._alignPos+this.size}}get anchorPoints(){return this._anchors}get controlParams(){return{range:this._range,position:this._position,circular:this._circularEnabled}}get atEdge(){return this._position<=this._range.min||this._position>=this._range.max}get size(){const e=this._flicking;return e?e.horizontal?e.viewport.width:e.viewport.height:0}get progress(){const e=this._flicking,t=this._position+this._offset,n=this.findNearestAnchor(this._position);if(!e||!n)return NaN;const i=n.panel,r=i.position+i.offset,s=e.control.controller.bounce,{min:o,max:a}=this.range,l=this.rangeDiff;if(t===r)return i.index;if(t<r){const e=i.prev();let n=e?e.position+e.offset:o-s[0];return n>r&&(n-=l),i.index-1+Q(t,n,r)}{const e=i.next();let n=e?e.position+e.offset:a+s[1];return n<r&&(n+=l),i.index+Q(t,r,n)}}get panelOrder(){return this._panelOrder}get align(){return this._align}set align(e){this._align=e}init(){const e=this._flicking.viewport.element;return M(e.firstElementChild,"First element child of the viewport element"),this._el=e.firstElementChild,this._checkTranslateSupport(),this._updateMode(),this.updatePanelOrder(),this}destroy(){return this._resetInternalValues(),this}lookAt(e){const t=this._offset,n=this._lookedOffset!==t,i=L(this._flicking),r=this._position;this._position=e;const s=this._togglePanels(r,e);this._refreshVisiblePanels(),this._checkNeedPanel(),this._checkReachEnd(r,e),s?i.renderer.render().then(()=>{this.updateOffset(),this._lookedOffset=this._offset}):n?(this.updateOffset(),this._lookedOffset=this._offset):this.applyTransform()}getPrevAnchor(e){if(this._circularEnabled&&0===e.index){const e=this._anchors,t=this.rangeDiff,n=e[e.length-1];return new A({index:n.index,position:n.position-t,panel:n.panel})}return this._anchors[e.index-1]||null}getNextAnchor(e){const t=this._anchors;if(this._circularEnabled&&e.index===t.length-1){const e=this.rangeDiff,n=t[0];return new A({index:n.index,position:n.position+e,panel:n.panel})}return t[e.index+1]||null}getProgressInPanel(e){const t=e.range;return(this._position-t.min)/(t.max-t.min)}findAnchorIncludePosition(e){return this._mode.findAnchorIncludePosition(e)}findNearestAnchor(e){return this._mode.findNearestAnchor(e)}findActiveAnchor(){var e;const t=L(this._flicking).control.activePanel;return t?null!=(e=q(this._anchors,e=>e.panel.index===t.index))?e:this.findNearestAnchor(t.position):null}clampToReachablePosition(e){return this._mode.clampToReachablePosition(e)}canReach(e){return this._mode.canReach(e)}canSee(e){return this._mode.canSee(e)}updateRange(){const e=L(this._flicking).renderer.panels;return this._updateMode(),this._range=this._mode.getRange(),e.forEach(e=>e.updateCircularToggleDirection()),this}updateAlignPos(){const e=this._align,t="object"==typeof e?e.camera:e;return this._alignPos=F(t,this.size),this}updateAnchors(){return this._anchors=this._mode.getAnchors(),this}updateAdaptiveHeight(){const e=L(this._flicking),t=e.control.activePanel,n=[...e.visiblePanels];if(t&&n.push(t),!e.horizontal||!e.adaptive||!n.length)return;const i=Math.max(...n.map(e=>e.height));e.viewport.setSize({height:i})}updateOffset(){const e=L(this._flicking),t=this._position,n=e.panels.filter(e=>!e.rendered);return this._offset=n.filter(e=>e.position+e.offset<t).reduce((e,t)=>e+t.sizeIncludingMargin,0),this._circularOffset=this._mode.getCircularOffset(),this.applyTransform(),this}updatePanelOrder(){const e=L(this._flicking);if(!e.horizontal)return this;const t=this._el,n=J(t).direction;return n!==this._panelOrder&&(this._panelOrder=n===O.RTL?O.RTL:O.LTR,e.initialized&&e.control.controller.updateDirection()),this}resetNeedPanelHistory(){return this._needPanelTriggered={prev:!1,next:!1},this}applyTransform(){const e=this._el,t=L(this._flicking);if(t.renderer.rendering||!t.initialized)return this;const n=this._position-this._alignPos-this._offset+this._circularOffset;return e.style[this._transform]=t.horizontal?`translate(${this._panelOrder===O.RTL?n:-n}px)`:`translate(0, ${-n}px)`,this}_resetInternalValues(){this._position=0,this._lookedOffset=0,this._alignPos=0,this._offset=0,this._circularOffset=0,this._circularEnabled=!1,this._range={min:0,max:0},this._visiblePanels=[],this._anchors=[],this._needPanelTriggered={prev:!1,next:!1}}_refreshVisiblePanels(){const e=L(this._flicking),t=e.renderer.panels.filter(e=>this.canSee(e)),n=this._visiblePanels;this._visiblePanels=t;const i=t.filter(e=>!Y(n,e)),r=n.filter(e=>!Y(t,e));(i.length>0||r.length>0)&&e.renderer.render().then(()=>{e.trigger(new m(I.VISIBLE_CHANGE,{added:i,removed:r,visiblePanels:t}))})}_checkNeedPanel(){const e=this._needPanelTriggered;if(e.prev&&e.next)return;const t=L(this._flicking),n=t.renderer.panels;if(n.length<=0)return e.prev||(t.trigger(new m(I.NEED_PANEL,{direction:x.PREV})),e.prev=!0),void(e.next||(t.trigger(new m(I.NEED_PANEL,{direction:x.NEXT})),e.next=!0));const i=this._position,r=this.size,s=this._range,o=t.needPanelThreshold,a=i-this._alignPos,l=a+r,h=n[0],c=n[n.length-1];if(!e.prev){(a<=h.range.min+o||i<=s.min+o)&&(t.trigger(new m(I.NEED_PANEL,{direction:x.PREV})),e.prev=!0)}if(!e.next){(l>=c.range.max-o||i>=s.max-o)&&(t.trigger(new m(I.NEED_PANEL,{direction:x.NEXT})),e.next=!0)}}_checkReachEnd(e,t){const n=L(this._flicking),i=this._range,r=e>i.min&&e<i.max,s=t>i.min&&t<i.max;if(!r||s)return;const o=t<=i.min?x.PREV:x.NEXT;n.trigger(new m(I.REACH_EDGE,{direction:o}))}_updateMode(){const e=L(this._flicking);if(e.circular){const t=new de(e),n=t.checkAvailability();if(n)this._mode=t;else{const t=e.circularFallback;this._mode=t===y.BOUND?new ue(e):new ge(e)}this._circularEnabled=n}else this._mode=e.bound?new ue(e):new ge(e),this._circularEnabled=!1}_togglePanels(e,t){if(t===e)return!1;return L(this._flicking).renderer.panels.map(n=>n.toggle(e,t)).some(e=>e)}};const fe=Object.freeze(Object.defineProperty({__proto__:null,BoundCameraMode:ue,Camera:_e,CircularCameraMode:de,LinearCameraMode:ge},Symbol.toStringTag,{value:"Module"}));function pe(e,t){for(var n=e.length,i=0;i<n;++i)if(t(e[i],i))return!0;return!1}function ve(e,t){for(var n=e.length,i=0;i<n;++i)if(t(e[i],i))return e[i];return null}function me(e){var t=e;if(void 0===t){if("undefined"==typeof navigator||!navigator)return"";t=navigator.userAgent||""}return t.toLowerCase()}function Ee(e,t){try{return new RegExp(e,"g").exec(t)}catch(n){return null}}function xe(e){return e.replace(/_/g,".")}function Pe(e,t){var n=null,i="-1";return pe(e,function(e){var r=Ee("("+e.test+")((?:\\/|\\s|:)([0-9|\\.|_]+))?",t);return!(!r||e.brand)&&(n=e,i=r[3]||"-1",e.versionAlias?i=e.versionAlias:e.versionTest&&(i=function(e,t){var n=Ee("("+e+")((?:\\/|\\s|:)([0-9|\\.|_]+))",t);return n?n[3]:""}(e.versionTest.toLowerCase(),t)||i),i=xe(i),!0)}),{preset:n,version:i}}function be(e,t){var n={brand:"",version:"-1"};return pe(e,function(e){var i=ye(t,e);return!!i&&(n.brand=e.id,n.version=e.versionAlias||i.version,"-1"!==n.version)}),n}function ye(e,t){return ve(e,function(e){var n=e.brand;return Ee(""+t.test,n.toLowerCase())})}var Oe=[{test:"phantomjs",id:"phantomjs"},{test:"whale",id:"whale"},{test:"edgios|edge|edg",id:"edge"},{test:"msie|trident|windows phone",id:"ie",versionTest:"iemobile|msie|rv"},{test:"miuibrowser",id:"miui browser"},{test:"samsungbrowser",id:"samsung internet"},{test:"samsung",id:"samsung internet",versionTest:"version"},{test:"chrome|crios",id:"chrome"},{test:"firefox|fxios",id:"firefox"},{test:"android",id:"android browser",versionTest:"version"},{test:"safari|iphone|ipad|ipod",id:"safari",versionTest:"version"}],Te=[{test:"(?=.*applewebkit/(53[0-7]|5[0-2]|[0-4]))(?=.*\\schrome)",id:"chrome",versionTest:"chrome"},{test:"chromium",id:"chrome"},{test:"whale",id:"chrome",versionAlias:"-1",brand:!0}],Re=[{test:"applewebkit",id:"webkit",versionTest:"applewebkit|safari"}],Ie=[{test:"(?=(iphone|ipad))(?!(.*version))",id:"webview"},{test:"(?=(android|iphone|ipad))(?=.*(naver|daum|; wv))",id:"webview"},{test:"webview",id:"webview"}],we=[{test:"windows phone",id:"windows phone"},{test:"windows 2000",id:"window",versionAlias:"5.0"},{test:"windows nt",id:"window"},{test:"win32|windows",id:"window"},{test:"iphone|ipad|ipod",id:"ios",versionTest:"iphone os|cpu os"},{test:"macos|macintel|mac os x",id:"mac"},{test:"android|linux armv81",id:"android"},{test:"tizen",id:"tizen"},{test:"webos|web0s",id:"webos"}];function Ae(e){return!!Pe(Ie,e).preset}function Se(e){return Object.keys(e)}function Ce(e){return"function"==typeof e}var ke="__observers__",Ne="__computed__",De="__CFCS_DETECTED_DEPENDENCIES__",Me=function(e,t){return(Me=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)};function ze(e,t,n){if(2===arguments.length)for(var i,r=0,s=t.length;r<s;r++)!i&&r in t||(i||(i=Array.prototype.slice.call(t,0,r)),i[r]=t[r]);return e.concat(i||Array.prototype.slice.call(t))}function Le(){Object[De]=Object[De]||{};var e=Object[De];return e[1]=e[1]||[],e[1]}var He=function(){function e(e){this._emitter=new v,this._current=e}var t=e.prototype;return Object.defineProperty(t,"current",{get:function(){var e,t=(e=Le())[e.length-1];return null==t||t.push(this),this._current},set:function(e){this._setCurrent(e)},enumerable:!1,configurable:!0}),t.subscribe=function(e){return this.current,this._emitter.on("update",e),this},t.unsubscribe=function(e){return this._emitter.off("update",e),this},t._setCurrent=function(e){var t=this._current,n=e!==t;this._current=e,n&&this._emitter.trigger("update",e,t)},t.toString=function(){return"".concat(this.current)},t.valueOf=function(){return this.current},e}(),Fe=function(e){function t(t){var n=e.call(this)||this;return n._computedCallback=t,n._registered=[],n._onCheckUpdate=function(){n._setCurrent(n.current)},n._current=n.current,n}!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}Me(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(t,e);var n=t.prototype;return Object.defineProperty(n,"current",{get:function(){var e,t,n,i,r=this;e=this,t=Le(),i={host:e,observers:n=[],push:function(t){e!==t&&-1===n.indexOf(t)&&n.push(t)}},t.push(i);var s=this._computedCallback(),o=Le().pop();return this._registered.forEach(function(e){e.unsubscribe(r._onCheckUpdate)}),o.observers.forEach(function(e){e.subscribe(r._onCheckUpdate)}),this._registered=o.observers,s},enumerable:!1,configurable:!0}),t}(He);function Ve(e,t,n){void 0===n&&(n=t);var i={configurable:!0,get:function(){return $e(this,n).current},set:function(e){$e(this,n,e).current=e}};Object.defineProperty(e,t,i),n!==t&&Object.defineProperty(e,n,{configurable:!0,get:function(){return $e(this,n).current}})}function je(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return e.length>1?Ve(e[0],e[1]):function(t,n){return Ve(t,n,e[0])}}function Be(e){e.subscribe=function(e,t){this[e],$e(this,e).subscribe(t)},e.unsubscribe=function(e,t){var n=this;e?e in this&&$e(this,e).unsubscribe(t):Se(Ye(this)).forEach(function(e){n.unsubscribe(e)})}}function Ge(e){Be(e.prototype)}function We(e,t){var n=Ce(e)?e():e,i={};return Ue(i),Se(n).forEach(function(e){var t,r=n[e];(t=r)&&function(e){return"object"==typeof e}(t)&&"current"in t&&"subscribe"in t&&"unsubscribe"in t?Ke(i,e,r):Ke(i,e,Xe(r)),je(e)(i,e)}),Be(i),i}function Xe(e){return new He(e)}function Ue(e){var t={};return Object.defineProperty(e,ke,{get:function(){return t}}),t}function Ye(e,t){var n,i;e[ke]||Ue(e);var r=e[ke];if(!t){var s=null===(i=null===(n=null==e?void 0:e.constructor)||void 0===n?void 0:n.prototype)||void 0===i?void 0:i[Ne];s&&s.forEach(function(t){!(t in r)&&t in e&&e[t]})}return r}function $e(e,t,n){var i=Ye(e);return i[t]||(i[t]=Xe(n)),i[t]}function Ke(e,t,n){Ye(e)[t]=n}function qe(e,t,n){var i=n.get;var r={configurable:!0,get:function(){var e,n=Ye(this,!0);return t in n||(n[t]=(e=i.bind(this),new Fe(e))),$e(this,t).current}};e[Ne]||(e[Ne]=[]);var s=e[Ne];return-1===s.indexOf(t)&&s.push(t),Object.defineProperty(e,t,r),r}var Ze=function(e,t){return(Ze=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)};function Qe(e,t){function n(){this.constructor=e}Ze(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var Je,et=function(){return et=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},et.apply(this,arguments)};function tt(e,t,n,i){var r,s=arguments.length,o=s<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(t,n,o):r(t,n))||o);return s>3&&o&&Object.defineProperty(t,n,o),o}Je="undefined"==typeof window?{navigator:{userAgent:""}}:window;var nt,it=24,rt="left",st="right",ot="middle",at={1:rt,2:ot,3:st},lt="ontouchstart"in Je&&"safari"===(function(){if("undefined"==typeof navigator||!navigator||!navigator.userAgentData)return!1;var e=navigator.userAgentData,t=e.brands||e.uaList;return!(!t||!t.length)}()?function(e){var t=navigator.userAgentData,n=(t.uaList||t.brands).slice(),i=t.mobile||!1,r=n[0],s=(t.platform||navigator.platform).toLowerCase(),o={name:r.brand,version:r.version,majorVersion:-1,webkit:!1,webkitVersion:"-1",chromium:!1,chromiumVersion:"-1",webview:!!be(Ie,n).brand||Ae(me())},a={name:"unknown",version:"-1",majorVersion:-1};o.webkit=!o.chromium&&pe(Re,function(e){return ye(n,e)});var l=be(Te,n);if(o.chromium=!!l.brand,o.chromiumVersion=l.version||"-1",!o.chromium){var h=be(Re,n);o.webkit=!!h.brand,o.webkitVersion=h.version||"-1"}var c=ve(we,function(e){return new RegExp(""+e.test,"g").exec(s)});a.name=c?c.id:"";var u=be(Oe,n);return o.name=u.brand||o.name,o.version=u.brand&&e?e.uaFullVersion:u.version,o.webkit&&(a.name=i?"ios":"mac"),"ios"===a.name&&o.webview&&(o.version="-1"),a.version=xe(a.version),o.version=xe(o.version),a.majorVersion=parseInt(a.version,10),o.majorVersion=parseInt(o.version,10),{browser:o,os:a,isMobile:i,isHints:!0}}():function(e){var t=me(e),n=!!/mobi/g.exec(t),i={name:"unknown",version:"-1",majorVersion:-1,webview:Ae(t),chromium:!1,chromiumVersion:"-1",webkit:!1,webkitVersion:"-1"},r={name:"unknown",version:"-1",majorVersion:-1},s=Pe(Oe,t),o=s.preset,a=s.version,l=Pe(we,t),h=l.preset,c=l.version,u=Pe(Te,t);if(i.chromium=!!u.preset,i.chromiumVersion=u.version,!i.chromium){var d=Pe(Re,t);i.webkit=!!d.preset,i.webkitVersion=d.version}return h&&(r.name=h.id,r.version=c,r.majorVersion=parseInt(c,10)),o&&(i.name=o.id,i.version=a,i.webview&&"ios"===r.name&&"safari"!==i.name&&(i.webview=!1)),i.majorVersion=parseInt(i.version,10),{browser:i,os:r,isMobile:n,isHints:!1}}(nt)).browser.name,ht=function(){if("undefined"==typeof document)return"";for(var e=(document.head||document.getElementsByTagName("head")[0]).style,t=["transform","webkitTransform","msTransform","mozTransform"],n=0,i=t.length;n<i;n++)if(t[n]in e)return t[n];return""}(),ct={"-webkit-user-select":"none","-ms-user-select":"none","-moz-user-select":"none","user-select":"none","-webkit-user-drag":"none"},ut=function(e){for(var t=[],n=0,i=e.length;n<i;n++)t.push(e[n]);return t},dt=function(e,t){var n;if(void 0===t&&(t=!1),"string"==typeof e){if(e.match(/^<([a-z]+)\s*([^>]*)>/)){var i=document.createElement("div");i.innerHTML=e,n=ut(i.childNodes)}else n=ut(document.querySelectorAll(e));t||(n=n.length>=1?n[0]:void 0)}else e===Je?n=e:"value"in e||"current"in e?n=e.value||e.current:!e.nodeName||1!==e.nodeType&&9!==e.nodeType?"jQuery"in Je&&e instanceof jQuery||e.constructor.prototype.jquery?n=t?e.toArray():e.get(0):Array.isArray(e)&&(n=e.map(function(e){return dt(e)}),t||(n=n.length>=1?n[0]:void 0)):n=e;return n},gt=Je.requestAnimationFrame||Je.webkitRequestAnimationFrame,_t=Je.cancelAnimationFrame||Je.webkitCancelAnimationFrame;if(gt&&!_t){var ft={},pt=gt;gt=function(e){var t=pt(function(n){ft[t]&&e(n)});return ft[t]=!0,t},_t=function(e){delete ft[e]}}else gt&&_t||(gt=function(e){return Je.setTimeout(function(){e(Je.performance&&Je.performance.now&&Je.performance.now()||(new Date).getTime())},16)},_t=Je.clearTimeout);var vt=function(e,t){var n={};for(var i in e)i&&(n[i]=t(e[i],i));return n},mt=function(e,t){var n={};for(var i in e)i&&t(e[i],i)&&(n[i]=e[i]);return n},Et=function(e,t){for(var n in e)if(n&&!t(e[n],n))return!1;return!0},xt=function(e,t){return Et(e,function(e,n){return e===t[n]})},Pt={},bt=function(e,t){return Pt[t]||(Pt[t]=Tt(t)),Pt[t](e)},yt=function(e,t){return e&&t?vt(e,function(e,n){return bt(e,"number"==typeof t?t:t[n])}):e},Ot=function(e){if(!isFinite(e))return 0;var t="".concat(e);if(t.indexOf("e")>=0){for(var n=0,i=1;Math.round(e*i)/i!==e;)i*=10,n++;return n}return t.indexOf(".")>=0?t.length-t.indexOf(".")-1:0},Tt=function(e){var t=e<1?Math.pow(10,Ot(e)):1;return function(n){return 0===e?0:Math.round(Math.round(n/e)*e*t)/t}},Rt=function(e,t,n){return n?!!(30===t||t&e&&n&e):!!(t&e)},It=function(){function e(e){this._axes=e,this.holdingCount=0}var t=e.prototype;return t.hold=function(e,t){var n=this._getRoundPos(e).roundPos;this._axes.trigger(new m("hold",{pos:n,input:t.input||null,inputEvent:t.event||null,isTrusted:!0}))},t.triggerRelease=function(e){var t=this._getRoundPos(e.destPos,e.depaPos),n=t.roundPos,i=t.roundDepa;e.destPos=n,e.depaPos=i,e.setTo=this._createUserControll(e.destPos,e.duration),this._axes.trigger(new m("release",et(et({},e),{bounceRatio:this._getBounceRatio(n)})))},t.triggerChange=function(e,t,n,i){var r=this;void 0===i&&(i=!1);var s=this.animationManager,o=s.axisManager,a=s.getEventInfo(),l=this._getRoundPos(e,t),h=l.roundPos,c=l.roundDepa,u=o.moveTo(h,c),d=(null==n?void 0:n.event)||(null==a?void 0:a.event)||null,g={pos:u.pos,delta:u.delta,bounceRatio:this._getBounceRatio(u.pos),holding:i,inputEvent:d,isTrusted:!!d,input:(null==n?void 0:n.input)||(null==a?void 0:a.input)||null,set:d?this._createUserControll(u.pos):function(){}},_=new m("change",g);return this._axes.trigger(_),Object.keys(u.pos).forEach(function(e){var t=u.pos[e];$e(r._axes,e,t).current=t}),d&&o.set(g.set().destPos),!_.isCanceled()},t.triggerAnimationStart=function(e){var t=this._getRoundPos(e.destPos,e.depaPos),n=t.roundPos,i=t.roundDepa;e.destPos=n,e.depaPos=i,e.setTo=this._createUserControll(e.destPos,e.duration);var r=new m("animationStart",e);return this._axes.trigger(r),!r.isCanceled()},t.triggerAnimationEnd=function(e){void 0===e&&(e=!1),this._axes.trigger(new m("animationEnd",{isTrusted:e}))},t.triggerFinish=function(e){void 0===e&&(e=!1),this._axes.trigger(new m("finish",{isTrusted:e}))},t.setAnimationManager=function(e){this.animationManager=e},t.destroy=function(){this._axes.off()},t._createUserControll=function(e,t){void 0===t&&(t=0);var n={destPos:et({},e),duration:t};return function(e,t){return e&&(n.destPos=et({},e)),void 0!==t&&(n.duration=t),n}},t._getRoundPos=function(e,t){var n=this._axes.options.round;return{roundPos:yt(e,n),roundDepa:yt(t,n)}},t._getBounceRatio=function(e){return this._axes.axisManager.map(e,function(e,t){return e<t.range[0]&&0!==t.bounce[0]?(t.range[0]-e)/t.bounce[0]:e>t.range[1]&&0!==t.bounce[1]?(e-t.range[1])/t.bounce[1]:0})},tt([je],e.prototype,"holdingCount",void 0),e}(),wt=function(){function e(e){this._options=e,this._prevented=!1}var t=e.prototype;return t.isInterrupting=function(){return this._options.interruptable||this._prevented},t.isInterrupted=function(){return!this._options.interruptable&&this._prevented},t.setInterrupt=function(e){this._options.interruptable||(this._prevented=e)},e}(),At=function(e,t,n,i){var r=e,s=[n[0]?t[0]:i?t[0]-i[0]:t[0],n[1]?t[1]:i?t[1]+i[1]:t[1]];return r=Math.max(s[0],r),r=Math.min(s[1],r)},St=function(e,t){return e<t[0]||e>t[1]},Ct=function(e,t,n){return n[1]&&e>t[1]||n[0]&&e<t[0]},kt=function(e,t,n){var i=e,r=t[0],s=t[1],o=s-r;return n[1]&&e>s&&(i=(i-s)%o+r),n[0]&&e<r&&(i=(i-r)%o+s),i},Nt=function(){function e(e){var t=this;this._axis=e,this._complementOptions(),this._pos=Object.keys(this._axis).reduce(function(e,n){return e[n]=t._axis[n].startPos,e},{})}var t=e.prototype;return t.getDelta=function(e,t){var n=this.get(e);return vt(this.get(t),function(e,t){return e-n[t]})},t.get=function(e){var t=this;return e&&Array.isArray(e)?e.reduce(function(e,n){return n&&n in t._pos&&(e[n]=t._pos[n]),e},{}):et(et({},this._pos),e||{})},t.moveTo=function(e,t){void 0===t&&(t=this._pos);var n=vt(this._pos,function(n,i){return i in e&&i in t?e[i]-t[i]:0});return this.set(this.map(e,function(e,t){return t?kt(e,t.range,t.circular):0})),{pos:et({},this._pos),delta:n}},t.set=function(e){for(var t in e)t&&t in this._pos&&(this._pos[t]=e[t])},t.every=function(e,t){var n=this._axis;return Et(e,function(e,i){return t(e,n[i],i)})},t.filter=function(e,t){var n=this._axis;return mt(e,function(e,i){return t(e,n[i],i)})},t.map=function(e,t){var n=this._axis;return vt(e,function(e,i){return t(e,n[i],i)})},t.isOutside=function(e){return!this.every(e?this.get(e):this._pos,function(e,t){return!St(e,t.range)})},t.getAxisOptions=function(e){return this._axis[e]},t.setAxis=function(e){var t=this;Object.keys(e).forEach(function(n){if(!t._axis[n])throw new Error("Axis ".concat(n," does not exist in Axes instance"));t._axis[n]=et(et({},t._axis[n]),e[n])}),this._complementOptions()},t._complementOptions=function(){var e=this;Object.keys(this._axis).forEach(function(t){e._axis[t]=et({range:[0,100],startPos:e._axis[t].range[0],bounce:[0,0],circular:[!1,!1]},e._axis[t]),["bounce","circular"].forEach(function(n){var i=e._axis,r=i[t][n];/string|number|boolean/.test(typeof r)&&(i[t][n]=[r,r])})})},e}(),Dt="ontouchstart"in Je,Mt="PointerEvent"in Je,zt=Mt||"MSPointerEvent"in Je,Lt=function(){function e(){var e=this;this._stopContextMenu=function(t){t.preventDefault(),Je.removeEventListener("contextmenu",e._stopContextMenu)}}var t=e.prototype;return t.extendEvent=function(e){var t,n,i,r=this.prevEvent,s=this._getCenter(e),o=r?this._getMovement(e):{x:0,y:0},a=r?this._getScale(e):1,l=r?(n=s.x-r.center.x,i=s.y-r.center.y,180*Math.atan2(i,n)/Math.PI):0,h=r?r.deltaX+o.x:o.x,c=r?r.deltaY+o.y:o.y,u=o.x,d=o.y,g=this._latestInterval,_=Date.now(),f=g?_-g.timestamp:0,p=r?r.velocityX:0,v=r?r.velocityY:0,m=r?r.directionX:1,E=r?r.directionY:1;return u>0?m=1:u<0&&(m=-1),d>0?E=1:d<0&&(E=-1),(!g||f>=16)&&(g&&(p=(t=[(h-g.deltaX)/f,(c-g.deltaY)/f])[0],v=t[1]),this._latestInterval={timestamp:_,deltaX:h,deltaY:c}),{srcEvent:e,scale:a,angle:l,center:s,deltaX:h,deltaY:c,offsetX:u,offsetY:d,directionX:m,directionY:E,velocityX:p,velocityY:v,preventSystemEvent:!0}},t._getDistance=function(e,t){var n=t.clientX-e.clientX,i=t.clientY-e.clientY;return Math.sqrt(n*n+i*i)},t._getButton=function(e){var t={1:rt,2:st,4:ot},n=this._isTouchEvent(e)?rt:t[e.buttons];return n||null},t._isTouchEvent=function(e){return e.type&&e.type.indexOf("touch")>-1},t._isValidButton=function(e,t){return t.indexOf(e)>-1},t._isValidEvent=function(e,t,n){return(!t||function(e,t){return!!(!t||t.indexOf("any")>-1||t.indexOf("none")>-1&&!e.shiftKey&&!e.ctrlKey&&!e.altKey&&!e.metaKey||t.indexOf("shift")>-1&&e.shiftKey||t.indexOf("ctrl")>-1&&e.ctrlKey||t.indexOf("alt")>-1&&e.altKey||t.indexOf("meta")>-1&&e.metaKey)}(e,t))&&(!n||this._isValidButton(this._getButton(e),n))},t._preventMouseButton=function(e,t){t===st?Je.addEventListener("contextmenu",this._stopContextMenu):t===ot&&e.preventDefault()},e}(),Ht=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.start=["mousedown"],t.move=["mousemove"],t.end=["mouseup"],t}Qe(t,e);var n=t.prototype;return n.onEventStart=function(e,t,n){var i=this._getButton(e);return this._isValidEvent(e,t,n)?(this._preventMouseButton(e,i),this.extendEvent(e)):null},n.onEventMove=function(e,t,n){return this._isValidEvent(e,t,n)?this.extendEvent(e):null},n.onEventEnd=function(){},n.onRelease=function(){this.prevEvent=null},n.getTouches=function(e,t){return t&&this._isValidButton(at[e.which],t)&&-1===this.end.indexOf(e.type)?1:0},n._getScale=function(){return 1},n._getCenter=function(e){return{x:e.clientX,y:e.clientY}},n._getMovement=function(e){var t=this.prevEvent.srcEvent;return{x:e.clientX-t.clientX,y:e.clientY-t.clientY}},t}(Lt),Ft=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.start=["touchstart"],t.move=["touchmove"],t.end=["touchend","touchcancel"],t}Qe(t,e);var n=t.prototype;return n.onEventStart=function(e,t){return this._baseTouches=e.touches,this._isValidEvent(e,t)?this.extendEvent(e):null},n.onEventMove=function(e,t){return this._isValidEvent(e,t)?this.extendEvent(e):null},n.onEventEnd=function(e){this._baseTouches=e.touches},n.onRelease=function(){this.prevEvent=null,this._baseTouches=null},n.getTouches=function(e){return e.touches.length},n._getScale=function(e){return 2!==e.touches.length||this._baseTouches.length<2?null:this._getDistance(e.touches[0],e.touches[1])/this._getDistance(this._baseTouches[0],this._baseTouches[1])},n._getCenter=function(e){return{x:e.touches[0].clientX,y:e.touches[0].clientY}},n._getMovement=function(e){var t=this.prevEvent.srcEvent;return e.touches[0].identifier!==t.touches[0].identifier?{x:0,y:0}:{x:e.touches[0].clientX-t.touches[0].clientX,y:e.touches[0].clientY-t.touches[0].clientY}},t}(Lt),Vt=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.start=Mt?["pointerdown"]:["MSPointerDown"],t.move=Mt?["pointermove"]:["MSPointerMove"],t.end=Mt?["pointerup","pointercancel"]:["MSPointerUp","MSPointerCancel"],t._firstInputs=[],t._recentInputs=[],t}Qe(t,e);var n=t.prototype;return n.onEventStart=function(e,t,n){var i=this._getButton(e);return this._isValidEvent(e,t,n)?(this._preventMouseButton(e,i),this._updatePointerEvent(e),this.extendEvent(e)):null},n.onEventMove=function(e,t,n){return this._isValidEvent(e,t,n)?(this._updatePointerEvent(e),this.extendEvent(e)):null},n.onEventEnd=function(e){this._removePointerEvent(e)},n.onRelease=function(){this.prevEvent=null,this._firstInputs=[],this._recentInputs=[]},n.getTouches=function(){return this._recentInputs.length},n._getScale=function(){return 2!==this._recentInputs.length?null:this._getDistance(this._recentInputs[0],this._recentInputs[1])/this._getDistance(this._firstInputs[0],this._firstInputs[1])},n._getCenter=function(e){return{x:e.clientX,y:e.clientY}},n._getMovement=function(e){var t=this.prevEvent.srcEvent;return e.pointerId!==t.pointerId?{x:0,y:0}:{x:e.clientX-t.clientX,y:e.clientY-t.clientY}},n._updatePointerEvent=function(e){var t=this,n=!1;this._recentInputs.forEach(function(i,r){i.pointerId===e.pointerId&&(n=!0,t._recentInputs[r]=e)}),n||(this._firstInputs.push(e),this._recentInputs.push(e))},n._removePointerEvent=function(e){this._firstInputs=this._firstInputs.filter(function(t){return t.pointerId!==e.pointerId}),this._recentInputs=this._recentInputs.filter(function(t){return t.pointerId!==e.pointerId})},t}(Lt),jt=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.start=["mousedown","touchstart"],t.move=["mousemove","touchmove"],t.end=["mouseup","touchend","touchcancel"],t}Qe(t,e);var n=t.prototype;return n.onEventStart=function(e,t,n){var i=this._getButton(e);return this._isTouchEvent(e)&&(this._baseTouches=e.touches),this._isValidEvent(e,t,n)?(this._preventMouseButton(e,i),this.extendEvent(e)):null},n.onEventMove=function(e,t,n){return this._isValidEvent(e,t,n)?this.extendEvent(e):null},n.onEventEnd=function(e){this._isTouchEvent(e)&&(this._baseTouches=e.touches)},n.onRelease=function(){this.prevEvent=null,this._baseTouches=null},n.getTouches=function(e,t){return this._isTouchEvent(e)?e.touches.length:this._isValidButton(at[e.which],t)&&-1===this.end.indexOf(e.type)?1:0},n._getScale=function(e){return this._isTouchEvent(e)?2!==e.touches.length||this._baseTouches.length<2?1:this._getDistance(e.touches[0],e.touches[1])/this._getDistance(this._baseTouches[0],this._baseTouches[1]):this.prevEvent.scale},n._getCenter=function(e){return this._isTouchEvent(e)?{x:e.touches[0].clientX,y:e.touches[0].clientY}:{x:e.clientX,y:e.clientY}},n._getMovement=function(e){var t=this,n=[e,this.prevEvent.srcEvent].map(function(e){return t._isTouchEvent(e)?{id:e.touches[0].identifier,x:e.touches[0].clientX,y:e.touches[0].clientY}:{id:null,x:e.clientX,y:e.clientY}}),i=n[0],r=n[1];return i.id===r.id?{x:i.x-r.x,y:i.y-r.y}:{x:0,y:0}},t}(Lt),Bt=function(e,t){return t.reduce(function(t,n,i){return e[i]&&(t[e[i]]=n),t},{})},Gt=function(e){void 0===e&&(e=[]);var t=!1,n=!1,i=!1;return e.forEach(function(e){switch(e){case"mouse":n=!0;break;case"touch":t=Dt;break;case"pointer":i=zt}}),i?new Vt:t&&n?new jt:t?new Ft:n?new Ht:null};function Wt(e){return e.indexOf("touch")>-1&&{passive:!1}}var Xt=function(){function e(e){var t=e.options,n=e.interruptManager,i=e.eventManager,r=e.axisManager,s=e.animationManager;this._isOutside=!1,this._moveDistance=null,this._isStopped=!1,this.options=t,this._interruptManager=n,this._eventManager=i,this._axisManager=r,this._animationManager=s}var t=e.prototype;return t.get=function(e){return this._axisManager.get(e.axes)},t.hold=function(e,t){if(!this._interruptManager.isInterrupted()&&e.axes.length){var n={input:e,event:t};this._isStopped=!1,this._interruptManager.setInterrupt(!0),this._animationManager.stopAnimation(n),++this._eventManager.holdingCount,this._moveDistance||this._eventManager.hold(this._axisManager.get(),n),this._isOutside=this._axisManager.isOutside(e.axes),this._moveDistance=this._axisManager.get(e.axes)}},t.change=function(e,t,n,i){if(!this._isStopped&&this._interruptManager.isInterrupting()&&!this._axisManager.every(n,function(e){return 0===e})){var r=t.srcEvent?t.srcEvent:t;if(!r.__childrenAxesAlreadyChanged){var s,o=this._moveDistance||this._axisManager.get(e.axes);s=vt(o,function(e,t){return e+(n[t]||0)}),this._moveDistance&&(this._moveDistance=this._axisManager.map(s,function(e,t){var n=t.circular,i=t.range;return n&&(n[0]||n[1])?kt(e,i,n):e})),this._isOutside&&this._axisManager.every(o,function(e,t){return!St(e,t.range)})&&(this._isOutside=!1),o=this._atOutside(o),s=this._atOutside(s),this.options.nested&&this._isEndofAxis(n,o,s)||(r.__childrenAxesAlreadyChanged=!0);var a={input:e,event:t};if(i){var l=this._animationManager.getDuration(s,o);this._animationManager.animateTo(s,l,a)}else{!this._eventManager.triggerChange(s,o,a,!0)&&(this._isStopped=!0,this._moveDistance=null,this._animationManager.finish(!1))}}}},t.release=function(e,t,n,i){if(!this._isStopped&&this._interruptManager.isInterrupting()&&this._moveDistance){var r=t.srcEvent?t.srcEvent:t;r.__childrenAxesAlreadyReleased&&(n=n.map(function(){return 0}));var s=this._axisManager.get(e.axes),o=this._axisManager.get(),a=this._animationManager.getDisplacement(n),l=Bt(e.axes,a),h=this._axisManager.get(this._axisManager.map(l,function(e,t,n){return t.circular&&(t.circular[0]||t.circular[1])?s[n]+e:At(s[n]+e,t.range,t.circular,t.bounce)}));r.__childrenAxesAlreadyReleased=!0;var c=this._animationManager.getDuration(h,s,i);0===c&&(h=et({},o));var u={depaPos:o,destPos:h,duration:c,delta:this._axisManager.getDelta(o,h),inputEvent:t,input:e,isTrusted:!0};--this._eventManager.holdingCount,this._eventManager.triggerRelease(u),0===this._eventManager.holdingCount&&(this._moveDistance=null);var d=this._animationManager.getUserControl(u),g=xt(d.destPos,o),_={input:e,event:t};g||0===d.duration?(g||this._eventManager.triggerChange(d.destPos,o,_,!0),this._interruptManager.setInterrupt(!1),this._axisManager.isOutside()?this._animationManager.restore(_):this._eventManager.triggerFinish(!0)):this._animationManager.animateTo(d.destPos,d.duration,_)}},t._atOutside=function(e){var t=this;return this._isOutside?this._axisManager.map(e,function(e,t){var n=t.range[0]-t.bounce[0],i=t.range[1]+t.bounce[1];return e>i?i:e<n?n:e}):this._axisManager.map(e,function(e,n){var i=n.range[0],r=n.range[1],s=n.bounce,o=n.circular;return o[0]&&e<i||o[1]&&e>r?e:e<i?i-t._animationManager.interpolate(i-e,s[0]):e>r?r+t._animationManager.interpolate(e-r,s[1]):e})},t._isEndofAxis=function(e,t,n){return this._axisManager.every(t,function(i,r,s){return 0===e[s]||t[s]===n[s]&&(o=i,a=r.range,l=r.bounce,!(h=r.circular)[0]&&o===a[0]-l[0]||!h[1]&&o===a[1]+l[1]);var o,a,l,h})},e}(),Ut=function(e,t,n){return Math.max(Math.min(e,n),t)},Yt=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._useDuration=!0,t}Qe(t,e);var n=t.prototype;return n.interpolate=function(e,t){var n=this._easing(1e-5)/1e-5;return this._easing(e/(t*n))*t},n.updateAnimation=function(e){var t,n=this._animateParam;if(n){var i=(new Date).getTime()-n.startTime,r=(null==e?void 0:e.destPos)||n.destPos,s=null!==(t=null==e?void 0:e.duration)&&void 0!==t?t:n.duration;if((null==e?void 0:e.restart)||s<=i)this.setTo(r,s-i);else{if(null==e?void 0:e.destPos){var o=this.axisManager.get();this._initialEasingPer=this._prevEasingPer,n.delta=this.axisManager.getDelta(o,r),n.destPos=r}if(null==e?void 0:e.duration){var a=(i+this._durationOffset)/n.duration;this._durationOffset=a*s-i,n.duration=s}}}},n._initState=function(e){return this._initialEasingPer=0,this._prevEasingPer=0,this._durationOffset=0,{pos:e.depaPos,easingPer:0,finished:!1}},n._getNextState=function(e){var t=this,n=this._animateParam,i=e.pos,r=n.destPos,s=vt(i,function(e,t){return e<=r[t]?1:-1}),o=((new Date).getTime()-n.startTime+this._durationOffset)/n.duration,a=this._easing(o),l=this.axisManager.map(i,function(e,l,h){var c=o>=1?r[h]:e+n.delta[h]*(a-t._prevEasingPer)/(1-t._initialEasingPer),u=kt(c,l.range,l.circular);if(c!==u){var d=s[h]*(l.range[1]-l.range[0]);r[h]-=d,i[h]-=d}return u});return this._prevEasingPer=a,{pos:l,easingPer:a,finished:a>=1}},n._easing=function(e){return e>1?1:this._options.easing(e)},t}(function(){function e(e){var t=e.options,n=e.interruptManager,i=e.eventManager,r=e.axisManager;this._options=t,this.interruptManager=n,this.eventManager=i,this.axisManager=r,this.animationEnd=this.animationEnd.bind(this)}var t=e.prototype;return t.getDuration=function(e,t,n){var i,r=this;if(void 0!==n)i=n;else{var s=vt(t,function(t,n){return function(e,t){var n=Math.sqrt(e/t*2);return n<100?0:n}(Math.abs(t-e[n]),r._options.deceleration)});i=Object.keys(s).reduce(function(e,t){return Math.max(e,s[t])},-1/0)}return Ut(i,this._options.minimumDuration,this._options.maximumDuration)},t.getDisplacement=function(e){var t=Math.pow(e.reduce(function(e,t){return e+t*t},0),1/e.length),n=Math.abs(t/-this._options.deceleration);return e.map(function(e){return e/2*n})},t.stopAnimation=function(e){if(this._animateParam){var t=this.axisManager.get(),n=this.axisManager.map(t,function(e,t){return kt(e,t.range,t.circular)});Et(n,function(e,n){return t[n]===e})||this.eventManager.triggerChange(n,t,e,!!e),this._animateParam=null,this._raf&&(i=this._raf,_t(i)),this._raf=null,this.eventManager.triggerAnimationEnd(!!(null==e?void 0:e.event))}var i},t.getEventInfo=function(){return this._animateParam&&this._animateParam.input&&this._animateParam.inputEvent?{input:this._animateParam.input,event:this._animateParam.inputEvent}:null},t.restore=function(e){var t=this.axisManager.get(),n=this.axisManager.map(t,function(e,t){return Math.min(t.range[1],Math.max(t.range[0],e))});this.stopAnimation(),this.animateTo(n,this.getDuration(t,n),e)},t.animationEnd=function(){var e=this.getEventInfo();this._animateParam=null;var t=this.axisManager.filter(this.axisManager.get(),function(e,t){return Ct(e,t.range,t.circular)});Object.keys(t).length>0&&this.setTo(this.axisManager.map(t,function(e,t){return kt(e,t.range,t.circular)})),this.interruptManager.setInterrupt(!1),this.eventManager.triggerAnimationEnd(!!e),this.axisManager.isOutside()?this.restore(e):this.finish(!!e)},t.finish=function(e){this._animateParam=null,this.interruptManager.setInterrupt(!1),this.eventManager.triggerFinish(e)},t.getUserControl=function(e){var t=e.setTo();return t.destPos=this.axisManager.get(t.destPos),t.duration=Ut(t.duration,this._options.minimumDuration,this._options.maximumDuration),t},t.animateTo=function(e,t,n){var i=this;this.stopAnimation();var r=this._createAnimationParam(e,t,n),s=et({},r.depaPos),o=this.eventManager.triggerAnimationStart(r),a=this.getUserControl(r);if(!o&&this.axisManager.every(a.destPos,function(e,t){return Ct(e,t.range,t.circular)})&&console.warn("You can't stop the 'animation' event when 'circular' is true."),o&&!xt(a.destPos,s)){var l=(null==n?void 0:n.event)||null;this._animateLoop({depaPos:s,destPos:a.destPos,duration:a.duration,delta:this.axisManager.getDelta(s,a.destPos),isTrusted:!!l,inputEvent:l,input:(null==n?void 0:n.input)||null},function(){return i.animationEnd()})}},t.setTo=function(e,t){void 0===t&&(t=0);var n=Object.keys(e),i=this.axisManager.get(n);if(xt(e,i))return this;this.interruptManager.setInterrupt(!0);var r=mt(e,function(e,t){return i[t]!==e});return Object.keys(r).length?(r=this.axisManager.map(r,function(e,t){var n=t.range,i=t.circular;return i&&(i[0]||i[1])?e:At(e,n,i)}),xt(r,i)||(t>0?this.animateTo(r,t):(this.stopAnimation(),this.eventManager.triggerChange(r),this.finish(!1))),this):this},t.setBy=function(e,t){return void 0===t&&(t=0),this.setTo(vt(this.axisManager.get(Object.keys(e)),function(t,n){return t+e[n]}),t)},t.setOptions=function(e){this._options=et(et({},this._options),e)},t._createAnimationParam=function(e,t,n){var i=this.axisManager.get(),r=e,s=(null==n?void 0:n.event)||null;return{depaPos:i,destPos:r,duration:Ut(t,this._options.minimumDuration,this._options.maximumDuration),delta:this.axisManager.getDelta(i,r),inputEvent:s,input:(null==n?void 0:n.input)||null,isTrusted:!!s,done:this.animationEnd}},t._animateLoop=function(e,t){var n=this;if(e.duration){this._animateParam=et(et({},e),{startTime:(new Date).getTime()});var i=vt(e.destPos,function(e){return e}),r=this._initState(this._animateParam),s=function(){n._raf=null;var e=n._animateParam,o=n._getNextState(r),a=!n.eventManager.triggerChange(o.pos,r.pos);if(r=o,o.finished)return e.destPos=n._getFinalPos(e.destPos,i),xt(e.destPos,n.axisManager.get(Object.keys(e.destPos)))||n.eventManager.triggerChange(e.destPos,o.pos),void t();a?n.finish(!1):n._raf=gt(s)};s()}else this.eventManager.triggerChange(e.destPos),t()},t._getFinalPos=function(e,t){var n=this,i=1e-6;return vt(e,function(e,r){if(e>=t[r]-i&&e<=t[r]+i)return t[r];var s=n._getRoundUnit(e,r);return bt(e,s)})},t._getRoundUnit=function(e,t){var n,i=this._options.round,r=null;if(!i){var s=this.axisManager.getAxisOptions(t);n=Math.max(Ot(s.range[0]),Ot(s.range[1]),Ot(e)),r=1/Math.pow(10,n)}return r||i},e}()),$t=function(e){function t(t,n,i){void 0===t&&(t={}),void 0===n&&(n={}),void 0===i&&(i={});var r=e.call(this)||this;return r.axis=t,r._inputs=[],r.options=et({easing:function(e){return 1-Math.pow(1-e,3)},interruptable:!0,maximumDuration:1/0,minimumDuration:0,deceleration:6e-4,round:null,nested:!1},n),Object.keys(i).forEach(function(e){r.axis[e].startPos=i[e]}),r.interruptManager=new wt(r.options),r.axisManager=new Nt(r.axis),r.eventManager=new It(r),r.animationManager=new Yt(r),r.inputObserver=new Xt(r),r.eventManager.setAnimationManager(r.animationManager),r.eventManager.triggerChange(r.axisManager.get()),r}Qe(t,e);var n=t.prototype;return Object.defineProperty(n,"holding",{get:function(){return this.eventManager.holdingCount>0},enumerable:!1,configurable:!0}),n.connect=function(e,t){var n;return n="string"==typeof e?e.split(" "):e.concat(),~this._inputs.indexOf(t)&&this.disconnect(t),t.mapAxes(n),t.connect(this.inputObserver),this._inputs.push(t),this},n.disconnect=function(e){if(e){var t=this._inputs.indexOf(e);t>=0&&(this._inputs[t].disconnect(),this._inputs.splice(t,1))}else this._inputs.forEach(function(e){return e.disconnect()}),this._inputs=[];return this},n.get=function(e){return this.axisManager.get(e)},n.setTo=function(e,t){return void 0===t&&(t=0),this.animationManager.setTo(e,t),this},n.setBy=function(e,t){return void 0===t&&(t=0),this.animationManager.setBy(e,t),this},n.setOptions=function(e){return this.options=et(et({},this.options),e),this.animationManager.setOptions(e),this},n.setAxis=function(e){return this.axisManager.setAxis(e),this},n.stopAnimation=function(){return this.animationManager.stopAnimation(),this.animationManager.finish(!1),this},n.updateAnimation=function(e){return this.animationManager.updateAnimation(e),this},n.isBounceArea=function(e){return this.axisManager.isOutside(e)},n.destroy=function(){this.disconnect(),this.eventManager.destroy()},t.VERSION="3.9.2",t.TRANSFORM=ht,t.DIRECTION_NONE=1,t.DIRECTION_LEFT=2,t.DIRECTION_RIGHT=4,t.DIRECTION_UP=8,t.DIRECTION_DOWN=16,t.DIRECTION_HORIZONTAL=6,t.DIRECTION_VERTICAL=it,t.DIRECTION_ALL=30,tt([qe],t.prototype,"holding",null),t=tt([Ge],t)}(v),Kt=function(){function e(e,t){var n=this;this.axes=[],this.element=null,this._enabled=!1,this._activeEvent=null,this._atRightEdge=!1,this._rightEdgeTimer=0,this._dragged=!1,this._isOverThreshold=!1,this._preventClickWhenDragged=function(e){n._dragged&&(e.preventDefault(),e.stopPropagation()),n._dragged=!1},this._voidFunction=function(){},this.element=dt(e),this.options=et({inputType:["touch","mouse","pointer"],inputKey:["any"],inputButton:[rt],scale:[1,1],thresholdAngle:45,threshold:0,preventClickOnDrag:!1,preventDefaultOnDrag:!1,iOSEdgeSwipeThreshold:30,releaseOnScroll:!1,touchAction:null},t),this._onPanstart=this._onPanstart.bind(this),this._onPanmove=this._onPanmove.bind(this),this._onPanend=this._onPanend.bind(this)}var t=e.prototype;return t.mapAxes=function(e){var t,n;this._direction=(t=!!e[0],n=!!e[1],t&&n?30:t?6:n?it:1),this.axes=e},t.connect=function(e){return this._activeEvent&&(this._detachElementEvent(),this._detachWindowEvent(this._activeEvent)),this._attachElementEvent(e),this},t.disconnect=function(){return this._detachElementEvent(),this._detachWindowEvent(this._activeEvent),this._direction=1,this},t.destroy=function(){this.disconnect(),this.element=null},t.enable=function(){if(!Gt(this.options.inputType))throw new Error("PanInput cannot be enabled if there is no available input event.");return this._enabled||(this._enabled=!0,this._originalCssProps=function(e,t,n){var i,r=((i={})[1]="auto",i[30]="none",i[24]="pan-x",i[6]="pan-y",i),s={};if(e&&e.style){var o=t.touchAction?t.touchAction:r[n],a=et(et({},ct),{"touch-action":"none"===e.style["touch-action"]?"none":o});Object.keys(a).forEach(function(t){s[t]=e.style[t]}),Object.keys(a).forEach(function(t){e.style[t]=a[t]})}return s}(this.element,this.options,this._direction)),this},t.disable=function(){var e,t;return this._enabled&&(this._enabled=!1,e=this._originalCssProps,t=!0,Object.keys(ct).forEach(function(n){e&&e[n]===ct[n]||(t=!1)}),t||function(e,t){e&&e.style&&t&&Object.keys(t).forEach(function(n){e.style[n]=t[n]})}(this.element,this._originalCssProps)),this},t.isEnabled=function(){return this._enabled},t.release=function(){var e=this._activeEvent,t=e.prevEvent;return e.onRelease(),this._observer.release(this,t,[0,0]),this._detachWindowEvent(e),this},t._onPanstart=function(e){var t=this.options,n=t.inputKey,i=t.inputButton,r=t.preventDefaultOnDrag,s=this._activeEvent,o=s.onEventStart(e,n,i);if(o&&this._enabled&&!(s.getTouches(e,i)>1)&&!1!==o.srcEvent.cancelable){var a=this.options.iOSEdgeSwipeThreshold;this._dragged=!1,this._isOverThreshold=!1,this._observer.hold(this,o),this._atRightEdge=lt&&o.center.x>window.innerWidth-a,this._attachWindowEvent(s),r&&"touchstart"!==o.srcEvent.type&&o.srcEvent.preventDefault(),s.prevEvent=o}},t._onPanmove=function(e){var t=this,n=this.options,i=n.iOSEdgeSwipeThreshold,r=n.preventClickOnDrag,s=n.releaseOnScroll,o=n.inputKey,a=n.inputButton,l=n.threshold,h=n.thresholdAngle,c=this._activeEvent,u=c.onEventMove(e,o,a),d=c.getTouches(e,a);if(0===d||s&&u&&!u.srcEvent.cancelable)this._onPanend(e);else if(u&&this._enabled&&!(d>1)){var g=function(e,t){if(t<0||t>90)return 1;var n=Math.abs(e);return n>t&&n<180-t?it:6}(u.angle,h),_=Rt(6,this._direction,g),f=Rt(it,this._direction,g);if(c.prevEvent&<){if(u.center.x<0)return void this.release();this._atRightEdge&&(clearTimeout(this._rightEdgeTimer),u.deltaX<-i?this._atRightEdge=!1:this._rightEdgeTimer=window.setTimeout(function(){return t.release()},100))}var p=this._getDistance([u.deltaX,u.deltaY],[_,f]),v=this._getOffset([u.offsetX,u.offsetY],[_,f]),m=v.some(function(e){return 0!==e});m&&(!1!==u.srcEvent.cancelable&&u.srcEvent.preventDefault(),u.srcEvent.stopPropagation()),u.preventSystemEvent=m,m&&(this._isOverThreshold||p>=l)&&(this._dragged=r,this._isOverThreshold=!0,this._observer.change(this,u,Bt(this.axes,v))),c.prevEvent=u}},t._onPanend=function(e){var t=this.options.inputButton,n=this._activeEvent;if(n.onEventEnd(e),this._enabled&&0===n.getTouches(e,t)){this._detachWindowEvent(n),clearTimeout(this._rightEdgeTimer);var i=n.prevEvent,r=this._isOverThreshold?this._getOffset([Math.abs(i.velocityX)*i.directionX,Math.abs(i.velocityY)*i.directionY],[Rt(6,this._direction),Rt(it,this._direction)]):[0,0];n.onRelease(),this._observer.release(this,i,r)}},t._attachWindowEvent=function(e){var t=this;null==e||e.move.forEach(function(e){window.addEventListener(e,t._onPanmove,Wt(e))}),null==e||e.end.forEach(function(e){window.addEventListener(e,t._onPanend,Wt(e))})},t._detachWindowEvent=function(e){var t=this;null==e||e.move.forEach(function(e){window.removeEventListener(e,t._onPanmove)}),null==e||e.end.forEach(function(e){window.removeEventListener(e,t._onPanend)})},t._getOffset=function(e,t){var n=this.options.scale;return[t[0]?e[0]*n[0]:0,t[1]?e[1]*n[1]:0]},t._getDistance=function(e,t){return Math.sqrt(Number(t[0])*Math.pow(e[0],2)+Number(t[1])*Math.pow(e[1],2))},t._attachElementEvent=function(e){var t=this,n=Gt(this.options.inputType),i=this.element;if(n){if(!i)throw new Error("Element to connect input does not exist.");this._observer=e,this.enable(),this._activeEvent=n,i.addEventListener("click",this._preventClickWhenDragged,!0),n.start.forEach(function(e){i.addEventListener(e,t._onPanstart)}),n.move.forEach(function(e){i.addEventListener(e,t._voidFunction)})}},t._detachElementEvent=function(){var e=this,t=this._activeEvent,n=this.element;n&&(n.removeEventListener("click",this._preventClickWhenDragged,!0),null==t||t.start.forEach(function(t){n.removeEventListener(t,e._onPanstart)}),null==t||t.move.forEach(function(t){n.removeEventListener(t,e._voidFunction)})),this.disable(),this._observer=null},e}();const qt={HOLD:"hold",CHANGE:"change",RELEASE:"release",ANIMATION_END:"animationEnd",FINISH:"finish"},Zt="flick";var Qt=(e=>(e[e.IDLE=0]="IDLE",e[e.HOLDING=1]="HOLDING",e[e.DRAGGING=2]="DRAGGING",e[e.ANIMATING=3]="ANIMATING",e[e.DISABLED=4]="DISABLED",e))(Qt||{});class Jt{constructor(){this._delta=0,this._targetPanel=null}get delta(){return this._delta}get targetPanel(){return this._targetPanel}set targetPanel(e){this._targetPanel=e}onEnter(e){this._delta=e._delta,this._targetPanel=e._targetPanel}onHold(e){}onChange(e){}onRelease(e){}onAnimationEnd(e){}onFinish(e){}_moveToChangedPosition(e){const{flicking:t,axesEvent:n,transitTo:i}=e,r=n.delta[Zt];if(!r)return;this._delta+=r;const s=t.camera,o=s.position,a=n.pos[Zt],l=t.circularEnabled?K(a,s.range.min,s.range.max):a;s.lookAt(l);const h=new m(I.MOVE,{isTrusted:n.isTrusted,holding:this.holding,direction:W(0,n.delta[Zt]),axesEvent:n});t.trigger(h),h.isCanceled()&&(s.lookAt(o),i(4))}}class en extends Jt{constructor(){super(...arguments),this.holding=!1,this.animating=!0}onHold(e){const{flicking:t,axesEvent:n,transitTo:i}=e,r=this._targetPanel,s=t.control;this._delta=0,t.control.updateInput(),t.changeOnHold&&r&&s.setActive(r,s.activePanel,n.isTrusted);const o=new m(I.HOLD_START,{axesEvent:n});t.trigger(o),o.isCanceled()?i(Qt.DISABLED):i(Qt.DRAGGING)}onChange(e){this._moveToChangedPosition(e)}onFinish(e){const{flicking:t,axesEvent:n,transitTo:i}=e,r=t.control,s=r.controller.animatingContext;i(Qt.IDLE),t.trigger(new m(I.MOVE_END,{isTrusted:n.isTrusted,direction:W(s.start,s.end),axesEvent:n}));const o=this._targetPanel;o&&r.setActive(o,r.activePanel,n.isTrusted)}}class tn extends Jt{constructor(){super(...arguments),this.holding=!1,this.animating=!0}onAnimationEnd(e){const{transitTo:t}=e;t(Qt.IDLE)}onChange(e){const{axesEvent:t,transitTo:n}=e;t.stop(),n(Qt.IDLE)}onRelease(e){const{axesEvent:t,transitTo:n}=e;0===t.delta.flick&&n(Qt.IDLE)}}class nn extends Jt{constructor(){super(...arguments),this.holding=!0,this.animating=!0}onChange(e){this._moveToChangedPosition(e)}onRelease(e){const{flicking:t,axesEvent:n,transitTo:i}=e;if(t.trigger(new m(I.HOLD_END,{axesEvent:n})),t.renderer.panelCount<=0)return void i(Qt.IDLE);i(Qt.ANIMATING);const r=t.control,s=n.destPos[Zt],o=Math.max(n.duration,t.duration);try{r.moveToPosition(s,o,n)}catch(a){i(Qt.IDLE),n.setTo({[Zt]:t.camera.position},0)}}}class rn extends Jt{constructor(){super(...arguments),this.holding=!0,this.animating=!1,this._releaseEvent=null}onChange(e){const{flicking:t,axesEvent:n,transitTo:i}=e,r=n.inputEvent;if(!r)return;const s=t.horizontal?r.offsetX:r.offsetY,o=new m(I.MOVE_START,{isTrusted:n.isTrusted,holding:this.holding,direction:W(0,-s),axesEvent:n});t.trigger(o),o.isCanceled()?i(Qt.DISABLED):i(Qt.DRAGGING).onChange(e)}onRelease(e){const{flicking:t,axesEvent:n,transitTo:i}=e;if(t.trigger(new m(I.HOLD_END,{axesEvent:n})),0!==n.delta.flick)return n.setTo({flick:t.camera.position},0),void i(Qt.IDLE);this._releaseEvent=n}onFinish(e){const{flicking:t,transitTo:n}=e;if(n(Qt.IDLE),!this._releaseEvent)return;const i=this._releaseEvent.inputEvent.srcEvent;let r;if("touchend"===i.type){const e=i.changedTouches[0];r=document.elementFromPoint(e.clientX,e.clientY)}else r=i.target;const s=t.renderer.panels;let o=null;for(const a of s)if(a.contains(r)){o=a;break}if(o){const e=t.camera.position,n=o.position;t.trigger(new m(I.SELECT,{index:o.index,panel:o,direction:W(e,n)}))}}}class sn extends Jt{constructor(){super(...arguments),this.holding=!1,this.animating=!1}onEnter(){this._delta=0,this._targetPanel=null}onHold(e){const{flicking:t,axesEvent:n,transitTo:i}=e;if(t.renderer.panelCount<=0)return void i(Qt.DISABLED);const r=new m(I.HOLD_START,{axesEvent:n});t.trigger(r),r.isCanceled()?i(Qt.DISABLED):i(Qt.HOLDING)}onChange(e){const{flicking:t,axesEvent:n,transitTo:i}=e,r=t.control.controller.animatingContext,s=new m(I.MOVE_START,{isTrusted:n.isTrusted,holding:this.holding,direction:W(r.start,r.end),axesEvent:n});t.trigger(s),s.isCanceled()?i(Qt.DISABLED):i(Qt.ANIMATING).onChange(e)}}class on{constructor(){this.transitTo=e=>{let t;switch(e){case Qt.IDLE:t=new sn;break;case Qt.HOLDING:t=new rn;break;case Qt.DRAGGING:t=new nn;break;case Qt.ANIMATING:t=new en;break;case Qt.DISABLED:t=new tn}return t.onEnter(this._state),this._state=t,this._state},this._state=new sn}get state(){return this._state}fire(e,t){const n=this._state,i=u(c({},t),{transitTo:this.transitTo});switch(e){case qt.HOLD:n.onHold(i);break;case qt.CHANGE:n.onChange(i);break;case qt.RELEASE:n.onRelease(i);break;case qt.ANIMATION_END:n.onAnimationEnd(i);break;case qt.FINISH:n.onFinish(i)}}}class an{constructor(){this._onAxesHold=()=>{this._dragged=!1},this._onAxesChange=()=>{var e;this._dragged=!!(null==(e=this._panInput)?void 0:e.isEnabled())},this._preventClickWhenDragged=e=>{this._dragged&&(e.preventDefault(),e.stopPropagation()),this._dragged=!1},this._resetInternalValues(),this._stateMachine=new on}get axes(){return this._axes}get panInput(){return this._panInput}get stateMachine(){return this._stateMachine}get state(){return this._stateMachine.state}get animatingContext(){return this._animatingContext}get controlParams(){const e=this._axes;if(!e)return{range:{min:0,max:0},position:0,circular:!1};const t=e.axis[Zt];return{range:{min:t.range[0],max:t.range[1]},circular:t.circular[0],position:this.position}}get enabled(){var e,t;return null!=(t=null==(e=this._panInput)?void 0:e.isEnabled())&&t}get position(){var e,t;return null!=(t=null==(e=this._axes)?void 0:e.get([Zt])[Zt])?t:0}get range(){var e,t;return null!=(t=null==(e=this._axes)?void 0:e.axis[Zt].range)?t:[0,0]}get bounce(){var e;return null==(e=this._axes)?void 0:e.axis[Zt].bounce}init(e){this._flicking=e,this._axes=new $t({[Zt]:{range:[0,0],circular:!1,bounce:[0,0]}},{deceleration:e.deceleration,interruptable:e.interruptable,nested:e.nested,easing:e.easing}),this._panInput=new Kt(e.viewport.element,{inputType:e.inputType,threshold:e.dragThreshold,iOSEdgeSwipeThreshold:e.iOSEdgeSwipeThreshold,preventDefaultOnDrag:e.preventDefaultOnDrag,scale:e.horizontal?[e.camera.panelOrder===O.RTL?1:-1,0]:[0,-1],releaseOnScroll:!0});const t=this._axes;t.connect(e.horizontal?[Zt,""]:["",Zt],this._panInput);for(const n in qt){const i=qt[n];t.on(i,t=>{this._stateMachine.fire(i,{flicking:e,axesEvent:t})})}return this}destroy(){var e;this._axes&&(this.removePreventClickHandler(),this._axes.destroy()),null==(e=this._panInput)||e.destroy(),this._resetInternalValues()}enable(){var e;return null==(e=this._panInput)||e.enable(),this}disable(){var e;return null==(e=this._panInput)||e.disable(),this}release(){var e;return null==(e=this._panInput)||e.release(),this}updateAnimation(e,t){var n;return this._animatingContext=u(c({},this._animatingContext),{end:e}),null==(n=this._axes)||n.updateAnimation({destPos:{[Zt]:e},duration:t}),this}stopAnimation(){var e;return null==(e=this._axes)||e.stopAnimation(),this}update(e){const t=L(this._flicking),n=t.camera,i=this._axes,r=i.axis[Zt];return r.circular=[e.circular,e.circular],r.range=[e.range.min,e.range.max],r.bounce=V(t.bounce,n.size),i.axisManager.set({[Zt]:e.position}),this}addPreventClickHandler(){const e=L(this._flicking),t=this._axes,n=e.camera.element;return t.on(qt.HOLD,this._onAxesHold),t.on(qt.CHANGE,this._onAxesChange),n.addEventListener("click",this._preventClickWhenDragged,!0),this}removePreventClickHandler(){const e=L(this._flicking),t=this._axes,n=e.camera.element;return t.off(qt.HOLD,this._onAxesHold),t.off(qt.CHANGE,this._onAxesChange),n.removeEventListener("click",this._preventClickWhenDragged,!0),this}animateTo(e,t,n){var i;const r=this._axes,s=this._stateMachine.state;if(!r)return Promise.reject(new he(k.NOT_ATTACHED_TO_FLICKING,C.NOT_ATTACHED_TO_FLICKING));const o=this.getCurrentPosition();if(o===e){const t=L(this._flicking);return t.camera.lookAt(e),s.targetPanel&&t.control.setActive(s.targetPanel,t.control.activePanel,null!=(i=null==n?void 0:n.isTrusted)&&i),Promise.resolve()}this._animatingContext={start:o,end:e,offset:0};const a=()=>{r.once(qt.FINISH,()=>{this._animatingContext={start:0,end:0,offset:0}}),n?n.setTo({[Zt]:e},t):r.setTo({[Zt]:e},t)};return new Promise((e,t)=>{const n=()=>{r.off(qt.HOLD,i),e()},i=()=>{r.off(qt.FINISH,n),t(new he(k.ANIMATION_INTERRUPTED,C.ANIMATION_INTERRUPTED))};r.once(qt.FINISH,n),r.once(qt.HOLD,i),a()})}getCurrentPosition(){var e,t;return null!=(t=null==(e=this._axes)?void 0:e.get([Zt])[Zt])?t:0}updateDirection(){const e=L(this._flicking),t=this._axes,n=this._panInput;t.disconnect(n),t.connect(e.horizontal?[Zt,""]:["",Zt],n),n.options.scale=e.horizontal?[e.camera.panelOrder===O.RTL?1:-1,0]:[0,-1]}_resetInternalValues(){this._flicking=null,this._axes=null,this._panInput=null,this._animatingContext={start:0,end:0,offset:0},this._dragged=!1}}let ln=class{get controller(){return this._controller}get activeIndex(){var e,t;return null!=(t=null==(e=this._activePanel)?void 0:e.index)?t:-1}get activePanel(){return this._activePanel}get animating(){return this._controller.state.animating}get holding(){return this._controller.state.holding}constructor(){this._flicking=null,this._controller=new an,this._activePanel=null}init(e){return this._flicking=e,this._controller.init(e),this}destroy(){this._controller.destroy(),this._flicking=null,this._activePanel=null}enable(){return this._controller.enable(),this}disable(){return this._controller.disable(),this}release(){return this._controller.release(),this}updateAnimation(e,t,n){const i=this._controller.state,r=this._getPosition(e,null!=n?n:x.NONE);return i.targetPanel=e,this._controller.updateAnimation(r,t),this}stopAnimation(){return this._controller.state.targetPanel=null,this._controller.stopAnimation(),this}updatePosition(e){const t=L(this._flicking).camera,n=this._activePanel;n&&t.lookAt(t.clampToReachablePosition(n.position))}updateInput(){const e=L(this._flicking).camera;return this._controller.update(e.controlParams),this}resetActive(){return this._activePanel=null,this}moveToPanel(e,t){return d(this,arguments,function*(e,{duration:t,direction:n=x.NONE,axesEvent:i}){const r=this._getPosition(e,n);return this._triggerIndexChangeEvent(e,e.position,i,n),this._animateToPosition({position:r,duration:t,newActivePanel:e,axesEvent:i})})}setActive(e,t,n){var i;const r=L(this._flicking);this._activePanel=e,this._nextPanel=null,r.camera.updateAdaptiveHeight(),e!==t?r.trigger(new m(I.CHANGED,{index:e.index,panel:e,prevIndex:null!=(i=null==t?void 0:t.index)?i:-1,prevPanel:t,isTrusted:n,direction:t?W(t.position,e.position):x.NONE})):r.trigger(new m(I.RESTORED,{isTrusted:n}))}copy(e){this._flicking=e._flicking,this._activePanel=e._activePanel,this._controller=e._controller}_triggerIndexChangeEvent(e,t,n,i){var r;const s=L(this._flicking),o=e!==this._activePanel?I.WILL_CHANGE:I.WILL_RESTORE,a=s.camera,l=this._activePanel,h=new m(o,{index:e.index,panel:e,isTrusted:(null==n?void 0:n.isTrusted)||!1,direction:null!=i?i:W(null!=(r=null==l?void 0:l.position)?r:a.position,t)});if(this._nextPanel=e,s.trigger(h),h.isCanceled())throw new he(k.STOP_CALLED_BY_USER,C.STOP_CALLED_BY_USER)}_animateToPosition(e){return d(this,arguments,function*({position:e,duration:t,newActivePanel:n,axesEvent:i}){const r=L(this._flicking);let s=t;Math.abs(s-e)<r.animationThreshold&&(s=0);const o=()=>this._controller.animateTo(e,s,i);return this._controller.state.targetPanel=n,s<=0?o():o().then(()=>d(this,null,function*(){r.initialized&&(yield r.renderer.render())})).catch(e=>{if(!(i&&e instanceof he&&e.code===C.ANIMATION_INTERRUPTED))throw e})})}_getPosition(e,t=x.NONE){const n=L(this._flicking),i=n.camera;let r=e.position;const s=i.findNearestAnchor(r);if(e.removed||!s)throw new he(k.POSITION_NOT_REACHABLE(e.position),C.POSITION_NOT_REACHABLE);if(i.canReach(e)){if(n.circularEnabled){const e=this._controller.position,n=i.rangeDiff,s=[r,r+n,r-n].filter(n=>t===x.NONE||(t===x.PREV?n<=e:n>=e));r=s.reduce((t,n)=>Math.abs(e-n)<Math.abs(e-t)?n:t,1/0)}}else r=s.position,e=s.panel;return r}};class hn extends ln{get stopAtEdge(){return this._stopAtEdge}set stopAtEdge(e){this._stopAtEdge=e}constructor(e={}){super();const{stopAtEdge:t=!0}=e;this._stopAtEdge=t}updatePosition(e){const t=L(this._flicking).camera,n=this._activePanel;if(n){const i=n.range,r=i.min+(i.max-i.min)*e;t.lookAt(t.clampToReachablePosition(r))}}moveToPosition(e,t,n){const i=L(this._flicking).camera,r=i.clampToReachablePosition(e),s=i.findAnchorIncludePosition(r);if(!s)return Promise.reject(new he(k.POSITION_NOT_REACHABLE(e),C.POSITION_NOT_REACHABLE));const o=s.panel;return o!==this._activePanel&&this._triggerIndexChangeEvent(o,e,n),this._animateToPosition({position:this._stopAtEdge?r:e,duration:t,newActivePanel:o,axesEvent:n})}}class cn extends ln{get count(){return this._count}set count(e){this._count=e}constructor(e={}){super();const{count:t=1/0}=e;this._count=t}moveToPosition(e,t,n){const i=L(this._flicking),r=i.camera,s=r.findActiveAnchor(),o=r.findNearestAnchor(r.position),a=this._controller.state;if(!s||!o)return Promise.reject(new he(k.POSITION_NOT_REACHABLE(e),C.POSITION_NOT_REACHABLE));const l=this._calcSnapThreshold(i.threshold,e,s),h=i.animating?a.delta:e-r.position,c=Math.abs(h),u=n&&0!==n.delta[Zt]?Math.abs(n.delta[Zt]):c;let d;if(u>=l&&u>0)d=this._findSnappedAnchor(e,o);else{if(!(c>=i.threshold&&c>0))return this.moveToPanel(o.panel,{duration:t,axesEvent:n});d=this._findAdjacentAnchor(e,h,o)}return this._triggerIndexChangeEvent(d.panel,e,n),this._animateToPosition({position:r.clampToReachablePosition(d.position),duration:t,newActivePanel:d.panel,axesEvent:n})}_findSnappedAnchor(e,t){const n=L(this._flicking),i=n.camera,r=this._count,s=i.position,o=i.clampToReachablePosition(e),a=i.findAnchorIncludePosition(o);if(!t||!a)throw new he(k.POSITION_NOT_REACHABLE(e),C.POSITION_NOT_REACHABLE);if(!Number.isFinite(r))return a;const l=n.panelCount,h=i.anchorPoints;let c=Math.sign(e-s)*Math.floor(Math.abs(e-s)/i.rangeDiff);e>s&&a.index<t.index||a.position>t.position&&a.index===t.index?c+=1:(e<s&&a.index>t.index||a.position<t.position&&a.index===t.index)&&(c-=1);const u=c*l,d=a.index+u;if(Math.abs(d-t.index)<=r){const e=h[a.index];return new A({index:e.index,position:e.position+c*i.rangeDiff,panel:e.panel})}if(n.circularEnabled){const n=h[ne(t.index+Math.sign(e-s)*r,l)];let o=Math.floor(r/l);return e>s&&n.index<t.index?o+=1:e<s&&n.index>t.index&&(o-=1),new A({index:n.index,position:n.position+o*i.rangeDiff,panel:n.panel})}return h[z(t.index+Math.sign(e-s)*r,0,h.length-1)]}_findAdjacentAnchor(e,t,n){var i;const r=L(this._flicking).camera;if(r.circularEnabled){const t=r.findAnchorIncludePosition(e);if(t&&t.position!==n.position)return t}return null!=(i=t>0?r.getNextAnchor(n):r.getPrevAnchor(n))?i:n}_calcSnapThreshold(e,t,n){const i=t>n.position,r=n.panel,s=r.size,o=r.alignPosition;return Math.max(e,i?s-o+r.margin.next:o+r.margin.prev)}}class un extends ln{constructor(e={}){super(),this.setActive=(e,t,n)=>{super.setActive(e,t,n),this.updateInput()};const{count:t=1}=e;this._count=t,this._resetIndexRange()}get count(){return this._count}set count(e){this._count=e}destroy(){super.destroy(),this._resetIndexRange()}updateInput(){var e;const t=L(this._flicking),n=t.camera,i=t.renderer,r=this._controller,s=n.controlParams,o=this._count,a=r.state.animating?null==(e=n.findNearestAnchor(n.position))?void 0:e.panel:this._activePanel;if(!a)return r.update(s),this._resetIndexRange(),this;const l=s.range,h=a.position,c=a.index,u=i.panelCount;let d=c-o,g=c+o;d<0&&(d=t.circularEnabled?U((d+1)%u-1,u):z(d,0,u-1)),g>=u&&(g=t.circularEnabled?g%u:z(g,0,u-1));const _=i.panels[d],f=i.panels[g];let p=Math.max(_.position,l.min),v=Math.min(f.position,l.max);return p>h&&(p-=n.rangeDiff),v<h&&(v+=n.rangeDiff),s.range={min:p,max:v},s.circular&&(s.position<p&&(s.position+=n.rangeDiff),s.position>v&&(s.position-=n.rangeDiff)),s.circular=!1,r.update(s),this._indexRange={min:_.index,max:f.index},this}moveToPanel(e,t){return d(this,null,function*(){const n=L(this._flicking).camera;return this._controller.update(n.controlParams),(i=un.prototype,s=this,o="moveToPanel",a(r(i),o,s)).call(this,e,t);var i,s,o})}moveToPosition(e,t,n){var i;const r=L(this._flicking),s=r.camera,o=null!=(i=this._nextPanel)?i:this._activePanel,a=this._controller.range,l=this._indexRange,h=s.range,c=this._controller.state,u=z(s.clampToReachablePosition(e),a[0],a[1]),d=s.findAnchorIncludePosition(u);if(!d||!o)return Promise.reject(new he(k.POSITION_NOT_REACHABLE(e),C.POSITION_NOT_REACHABLE));const g=o.position,_=r.animating?c.delta:e-s.position,f=Math.abs(_)>=r.threshold,p=e>g?s.getNextAnchor(d):s.getPrevAnchor(d);let v,m;const E=s.anchorPoints,x=E[0],P=E[E.length-1],b=e<h.min&&te(x.panel.index,l.min,l.max),y=e>h.max&&te(P.panel.index,l.min,l.max),O=p&&(l.min<=l.max?te(p.index,l.min,l.max):p.index>=l.min||p.index<=l.max);if(b||y){const t=e<h.min?x:P;m=t.panel,v=t.position}else if(f&&d.position!==o.position)m=d.panel,v=d.position;else{if(!f||!O){const i=s.findNearestAnchor(s.position);return i?this.moveToPanel(i.panel,{duration:t,axesEvent:n}):Promise.reject(new he(k.POSITION_NOT_REACHABLE(e),C.POSITION_NOT_REACHABLE))}m=p.panel,v=p.position}return this._triggerIndexChangeEvent(m,e,n),this._animateToPosition({position:v,duration:t,newActivePanel:m,axesEvent:n})}_resetIndexRange(){this._indexRange={min:0,max:0}}}const dn=Object.freeze(Object.defineProperty({__proto__:null,AnimatingState:en,AxesController:an,Control:ln,DisabledState:tn,DraggingState:nn,FreeControl:hn,HoldingState:rn,IdleState:sn,SnapControl:cn,State:Jt,StateMachine:on,StrictControl:un},Symbol.toStringTag,{value:"Module"}));class gn{constructor(e){this._onResizeWrapper=()=>{this._onResize([])},this._onResize=e=>{const t=this._flicking,n=t.resizeDebounce,i=t.maxResizeDebounce,r=t.element;if(e.find(e=>e.target===t.element)&&1===e.length){const e={width:t.viewport.width,height:t.viewport.height},n={width:re({el:r,horizontal:!0,useFractionalSize:this._flicking.useFractionalSize,useOffset:!1,style:J(r)}),height:re({el:r,horizontal:!1,useFractionalSize:this._flicking.useFractionalSize,useOffset:!1,style:J(r)})};if(e.height===n.height&&e.width===n.width)return}n<=0?t.resize():(this._maxResizeDebounceTimer<=0&&i>0&&i>=n&&(this._maxResizeDebounceTimer=window.setTimeout(this._doScheduledResize,i)),this._resizeTimer>0&&(clearTimeout(this._resizeTimer),this._resizeTimer=0),this._resizeTimer=window.setTimeout(this._doScheduledResize,n))},this._doScheduledResize=()=>{clearTimeout(this._resizeTimer),clearTimeout(this._maxResizeDebounceTimer),this._maxResizeDebounceTimer=-1,this._resizeTimer=-1,this._flicking.resize()},this._skipFirstResize=(()=>{let e=!0;return t=>{e?e=!1:this._onResize(t)}})(),this._flicking=e,this._enabled=!1,this._resizeObserver=null,this._resizeTimer=-1,this._maxResizeDebounceTimer=-1}get enabled(){return this._enabled}enable(){const e=this._flicking,t=e.viewport;if(this._enabled&&this.disable(),e.useResizeObserver&&window.ResizeObserver){const n=0!==t.width||0!==t.height?new ResizeObserver(this._skipFirstResize):new ResizeObserver(this._onResize);this._resizeObserver=n,this.observe(e.viewport.element),e.observePanelResize&&this.observePanels()}else window.addEventListener("resize",this._onResizeWrapper);return this._enabled=!0,this}observePanels(){return this._flicking.panels.forEach(e=>{this.observe(e.element)}),this}unobservePanels(){return this._flicking.panels.forEach(e=>{this.unobserve(e.element)}),this}observe(e){const t=this._resizeObserver;return t?(t.observe(e),this):this}unobserve(e){const t=this._resizeObserver;return t?(t.unobserve(e),this._flicking.observePanelResize&&this.unobservePanels(),this):this}disable(){if(!this._enabled)return this;const e=this._resizeObserver;return e?(e.disconnect(),this._resizeObserver=null):window.removeEventListener("resize",this._onResizeWrapper),this._enabled=!1,this}}class _n{get element(){return this._element}get rendered(){return this._rendered}constructor(e){this._element=e,this._rendered=!0}show(e){const t=this.element,n=e.camera.element;t.parentElement!==n&&(n.appendChild(t),this._rendered=!0)}hide(e){const t=this.element,n=e.camera.element;t.parentElement===n&&(n.removeChild(t),this._rendered=!1)}}class fn{get element(){return this._virtualElement.nativeElement}get rendered(){return this._virtualElement.visible}get _virtualElement(){const e=this._flicking,t=this._panel.elementIndex;return e.virtual.elements[t]}constructor(e){this._flicking=e}init(e){this._panel=e}show(){}hide(){}}class pn{get element(){return this._el}get width(){return this._width-this._padding.left-this._padding.right}get height(){return this._height-this._padding.top-this._padding.bottom}get padding(){return this._padding}constructor(e,t){this._flicking=e,this._el=t,this._width=0,this._height=0,this._padding={left:0,right:0,top:0,bottom:0},this._isBorderBoxSizing=!1}setSize(e){const{width:t,height:n}=e,i=this._el,r=this._padding,s=this._isBorderBoxSizing;if(null!=t)if($(t))i.style.width=t;else{const e=s?t+r.left+r.right:t;i.style.width=`${e}px`}if(null!=n)if($(n))i.style.height=n;else{const e=s?n+r.top+r.bottom:n;i.style.height=`${e}px`}this.resize()}resize(){const e=this._el,t=J(e),{useFractionalSize:n}=this._flicking;this._width=re({el:e,horizontal:!0,useFractionalSize:n,useOffset:!1,style:t}),this._height=re({el:e,horizontal:!1,useFractionalSize:n,useOffset:!1,style:t}),this._padding={left:t.paddingLeft?parseFloat(t.paddingLeft):0,right:t.paddingRight?parseFloat(t.paddingRight):0,top:t.paddingTop?parseFloat(t.paddingTop):0,bottom:t.paddingBottom?parseFloat(t.paddingBottom):0},this._isBorderBoxSizing="border-box"===t.boxSizing}}class vn{get elements(){return this._elements}get renderPanel(){return this._renderPanel}get initialPanelCount(){return this._initialPanelCount}get cache(){return this._cache}get panelClass(){return this._panelClass}set renderPanel(e){this._renderPanel=e,this._flicking.renderer.panels.forEach(e=>e.uncacheRenderResult())}set cache(e){this._cache=e}set panelClass(e){this._panelClass=e}constructor(e,t){var n,i,r,s;this._flicking=e,this._renderPanel=null!=(n=null==t?void 0:t.renderPanel)?n:()=>"",this._initialPanelCount=null!=(i=null==t?void 0:t.initialPanelCount)?i:-1,this._cache=null!=(r=null==t?void 0:t.cache)&&r,this._panelClass=null!=(s=null==t?void 0:t.panelClass)?s:b.DEFAULT_VIRTUAL,this._elements=[]}init(){const e=this._flicking;if(!e.virtualEnabled)return;e.externalRenderer||e.renderExternal||this._initVirtualElements();const t=e.camera.children;this._elements=t.map(e=>({nativeElement:e,visible:!0}))}show(e){const t=this._elements[e],n=t.nativeElement;t.visible=!0,n.style.display&&(n.style.display="")}hide(e){const t=this._elements[e],n=t.nativeElement;t.visible=!1,n.style.display="none"}append(e=1){const t=this._flicking;return this.insert(t.panels.length,e)}prepend(e=1){return this.insert(0,e)}insert(e,t=1){if(t<=0)return[];return this._flicking.renderer.batchInsert({index:e,elements:ie(t),hasDOMInElements:!1})}remove(e,t){if(t<=0)return[];return this._flicking.renderer.batchRemove({index:e,deleteCount:t,hasDOMInElements:!1})}_initVirtualElements(){const e=this._flicking,t=e.camera.element,n=e.panelsPerView,i=document.createDocumentFragment();ie(n+1).map(e=>{const t=document.createElement("div");return t.className=this._panelClass,t.dataset.elementIndex=e.toString(),t}).forEach(e=>{i.appendChild(e)}),t.appendChild(i)}}var mn=function(e,t){return(mn=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)};function En(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}mn(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var xn=function(){return xn=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},xn.apply(this,arguments)};var Pn="undefined"!=typeof window,bn=Pn?window.navigator.userAgent:"",yn=!!Pn&&!!("getComputedStyle"in window),On=/MSIE|Trident|Windows Phone|Edge/.test(bn),Tn=!!Pn&&!!("addEventListener"in document),Rn="width",In="height";function wn(e,t){return e.getAttribute(t)||""}function An(e){return[].slice.call(e)}function Sn(e,t){return void 0===t&&(t="data-"),"loading"in e&&"lazy"===e.getAttribute("loading")||!!e.getAttribute(t+"lazy")}function Cn(e,t,n){Tn?e.addEventListener(t,n,!1):e.attachEvent?e.attachEvent("on"+t,n):e["on"+t]=n}function kn(e,t,n){e.removeEventListener?e.removeEventListener(t,n,!1):e.detachEvent?e.detachEvent("on"+t,n):e["on"+t]=null}function Nn(e,t){var n=e["client"+t]||e["offset"+t];return parseFloat(n||function(e){return(yn?window.getComputedStyle(e):e.currentStyle)||{}}(e)[t.toLowerCase()])||0}function Dn(e,t,n){var i=An(e.querySelectorAll(function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),r=0;for(t=0;t<n;t++)for(var s=arguments[t],o=0,a=s.length;o<a;o++,r++)i[r]=s[o];return i}(["["+n+"skip] ["+n+"width]"],t.map(function(e){return["["+n+"skip] "+e,e+"["+n+"skip]","["+n+"width] "+e].join(", ")})).join(", ")));return An(e.querySelectorAll("["+n+"width], "+t.join(", "))).filter(function(e){return-1===i.indexOf(e)})}var Mn=[];function zn(e,t){!Mn.length&&Cn(window,"resize",Hn),e.__PREFIX__=t,Mn.push(e),Ln(e)}function Ln(e,t){void 0===t&&(t="data-");var n=e.__PREFIX__||t,i=parseInt(wn(e,""+n+Rn),10)||0,r=parseInt(wn(e,""+n+In),10)||0;if(wn(e,n+"fixed")===In){var s=Nn(e,"Height")||r;e.style[Rn]=i/r*s+"px"}else{s=function(e){return Nn(e,"Width")}(e)||i;e.style[In]=r/i*s+"px"}}function Hn(){Mn.forEach(function(e){Ln(e)})}var Fn=function(e){function t(t,n){void 0===n&&(n={});var i=e.call(this)||this;i.isReady=!1,i.isPreReady=!1,i.hasDataSize=!1,i.hasLoading=!1,i.isSkip=!1,i.onCheck=function(e){i.clear(),e&&"error"===e.type&&i.onError(i.element),i.hasLoading&&i.checkElement()||i.onReady()},i.options=xn({prefix:"data-"},n),i.element=t;var r=i.options.prefix;return i.hasDataSize=function(e,t){return void 0===t&&(t="data-"),!!e.getAttribute(t+"width")}(t,r),i.isSkip=function(e,t){return void 0===t&&(t="data-"),!!e.getAttribute(t+"skip")}(t,r),i.hasLoading=Sn(t,r),i}En(t,e);var n=t.prototype;return n.check=function(){return this.isSkip||!this.checkElement()?(this.onAlreadyReady(),!1):(this.hasDataSize&&zn(this.element,this.options.prefix),(this.hasDataSize||this.hasLoading)&&this.onAlreadyPreReady(),!0)},n.addEvents=function(){var e=this,t=this.element;this.constructor.EVENTS.forEach(function(n){Cn(t,n,e.onCheck)})},n.clear=function(){var e=this,t=this.element;this.constructor.EVENTS.forEach(function(n){kn(t,n,e.onCheck)}),this.removeAutoSizer()},n.destroy=function(){this.clear(),this.off()},n.removeAutoSizer=function(){if(this.hasDataSize){var e=this.options.prefix;!function(e,t){var n=Mn.indexOf(e);if(!(n<0)){var i=wn(e,t+"fixed");delete e.__PREFIX__,e.style[i===In?Rn:In]="",Mn.splice(n,1),!Mn.length&&kn(window,"resize",Hn)}}(this.element,e)}},n.onError=function(e){this.trigger("error",{element:this.element,target:e})},n.onPreReady=function(){this.isPreReady||(this.isPreReady=!0,this.trigger("preReady",{element:this.element,hasLoading:this.hasLoading,isSkip:this.isSkip}))},n.onReady=function(){var e=this.isPreReady;this.isPreReady=!0,this.isReady||(this.removeAutoSizer(),this.isReady=!0,this.trigger("ready",{element:this.element,withPreReady:!e,hasLoading:this.hasLoading,isSkip:this.isSkip}))},n.onAlreadyError=function(e){var t=this;setTimeout(function(){t.onError(e)})},n.onAlreadyPreReady=function(){var e=this;setTimeout(function(){e.onPreReady()})},n.onAlreadyReady=function(){var e=this;setTimeout(function(){e.onReady()})},t.EVENTS=[],t}(v),Vn=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}En(t,e);var n=t.prototype;return n.setHasLoading=function(e){this.hasLoading=e},n.check=function(){return this.isSkip?(this.onAlreadyReady(),!1):(this.hasDataSize?(zn(this.element,this.options.prefix),this.onAlreadyPreReady()):this.trigger("requestChildren"),!0)},n.checkElement=function(){return!0},n.destroy=function(){this.clear(),this.trigger("requestDestroy"),this.off()},n.onAlreadyPreReady=function(){e.prototype.onAlreadyPreReady.call(this),this.trigger("reqeustReadyChildren")},t.EVENTS=[],t}(Fn),jn=function(e){function t(t){void 0===t&&(t={});var n=e.call(this)||this;return n.readyCount=0,n.preReadyCount=0,n.totalCount=0,n.totalErrorCount=0,n.isPreReadyOver=!0,n.elementInfos=[],n.options=xn({loaders:{},prefix:"data-"},t),n}En(t,e);var n=t.prototype;return n.check=function(e){var t=this,n=this.options.prefix;this.clear(),this.elementInfos=An(e).map(function(e,i){var r=t.getLoader(e,{prefix:n});return r.check(),r.on("error",function(e){t.onError(i,e.target)}).on("preReady",function(e){var n=t.elementInfos[i];n.hasLoading=e.hasLoading,n.isSkip=e.isSkip;var r=t.checkPreReady(i);t.onPreReadyElement(i),r&&t.onPreReady()}).on("ready",function(e){var n=e.withPreReady,r=e.hasLoading,s=e.isSkip,o=t.elementInfos[i];o.hasLoading=r,o.isSkip=s;var a=n&&t.checkPreReady(i),l=t.checkReady(i);n&&t.onPreReadyElement(i),t.onReadyElement(i),a&&t.onPreReady(),l&&t.onReady()}),{loader:r,element:e,hasLoading:!1,hasError:!1,isPreReady:!1,isReady:!1,isSkip:!1}});var i=this.elementInfos.length;return this.totalCount=i,i||setTimeout(function(){t.onPreReady(),t.onReady()}),this},n.getTotalCount=function(){return this.totalCount},n.isPreReady=function(){return this.elementInfos.every(function(e){return e.isPreReady})},n.isReady=function(){return this.elementInfos.every(function(e){return e.isReady})},n.hasError=function(){return this.totalErrorCount>0},n.clear=function(){this.isPreReadyOver=!1,this.totalCount=0,this.preReadyCount=0,this.readyCount=0,this.totalErrorCount=0,this.elementInfos.forEach(function(e){e.loader&&e.loader.destroy()}),this.elementInfos=[]},n.destroy=function(){this.clear(),this.off()},n.getLoader=function(e,t){var n=this,i=e.tagName.toLowerCase(),r=this.options.loaders,s=t.prefix,o=Object.keys(r);if(r[i])return new r[i](e,t);var a=new Vn(e,t),l=An(e.querySelectorAll(o.join(", ")));a.setHasLoading(l.some(function(e){return Sn(e,s)}));var h=this.clone().on("error",function(e){a.onError(e.target)}).on("ready",function(){a.onReady()});return a.on("requestChildren",function(){var t=Dn(e,o,n.options.prefix);h.check(t).on("preReady",function(e){e.isReady||a.onPreReady()})}).on("reqeustReadyChildren",function(){h.check(l)}).on("requestDestroy",function(){h.destroy()}),a},n.clone=function(){return new t(xn({},this.options))},n.checkPreReady=function(e){return this.elementInfos[e].isPreReady=!0,++this.preReadyCount,!(this.preReadyCount<this.totalCount)},n.checkReady=function(e){return this.elementInfos[e].isReady=!0,++this.readyCount,!(this.readyCount<this.totalCount)},n.onError=function(e,t){var n=this.elementInfos[e];n.hasError=!0,this.trigger(new m("error",{element:n.element,index:e,target:t,errorCount:this.getErrorCount(),totalErrorCount:++this.totalErrorCount}))},n.onPreReadyElement=function(e){var t=this.elementInfos[e];this.trigger(new m("preReadyElement",{element:t.element,index:e,preReadyCount:this.preReadyCount,readyCount:this.readyCount,totalCount:this.totalCount,isPreReady:this.isPreReady(),isReady:this.isReady(),hasLoading:t.hasLoading,isSkip:t.isSkip}))},n.onPreReady=function(){this.isPreReadyOver=!0,this.trigger(new m("preReady",{readyCount:this.readyCount,totalCount:this.totalCount,isReady:this.isReady(),hasLoading:this.hasLoading()}))},n.onReadyElement=function(e){var t=this.elementInfos[e];this.trigger(new m("readyElement",{index:e,element:t.element,hasError:t.hasError,errorCount:this.getErrorCount(),totalErrorCount:this.totalErrorCount,preReadyCount:this.preReadyCount,readyCount:this.readyCount,totalCount:this.totalCount,isPreReady:this.isPreReady(),isReady:this.isReady(),hasLoading:t.hasLoading,isPreReadyOver:this.isPreReadyOver,isSkip:t.isSkip}))},n.onReady=function(){this.trigger(new m("ready",{errorCount:this.getErrorCount(),totalErrorCount:this.totalErrorCount,totalCount:this.totalCount}))},n.getErrorCount=function(){return this.elementInfos.filter(function(e){return e.hasError}).length},n.hasLoading=function(){return this.elementInfos.some(function(e){return e.hasLoading})},t}(v),Bn=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return En(t,e),t.prototype.checkElement=function(){var e=this.element,t=e.getAttribute("src");if(e.complete){if(t)return e.naturalWidth||this.onAlreadyError(e),!1;this.onAlreadyPreReady()}return this.addEvents(),On&&e.setAttribute("src",t),!0},t.EVENTS=["load","error"],t}(Fn),Gn=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return En(t,e),t.prototype.checkElement=function(){var e=this.element;return!(e.readyState>=1)&&(e.error?(this.onAlreadyError(e),!1):(this.addEvents(),!0))},t.EVENTS=["loadedmetadata","error"],t}(Fn),Wn=function(e){function t(t){return void 0===t&&(t={}),e.call(this,xn({loaders:{img:Bn,video:Gn}},t))||this}return En(t,e),t}(jn);let Xn=class{get panels(){return this._panels}get rendering(){return this._rendering}get panelCount(){return this._panels.length}get strategy(){return this._strategy}get align(){return this._align}set align(e){this._align=e;const t=G(e);this._panels.forEach(e=>{e.align=t})}constructor(e){const{align:t=E.CENTER,strategy:n}=e;this._flicking=null,this._panels=[],this._rendering=!1,this._align=t,this._strategy=n}init(e){return this._flicking=e,this._collectPanels(),this}destroy(){this._flicking=null,this._panels=[]}getPanel(e){return this._panels[e]||null}forceRenderAllPanels(){return this._panels.forEach(e=>e.markForShow()),Promise.resolve()}getRenderedPanels(){return L(this._flicking).renderer.panels.filter(e=>e.rendered)}updatePanelSize(){const e=L(this._flicking),t=this._panels;if(t.length<=0)return this;if(e.panelsPerView>0){const e=t[0];e.resize(),this._updatePanelSizeByGrid(e,t)}else e.panels.forEach(e=>e.resize());return this}batchInsert(...e){const t=this.batchInsertDefer(...e);return t.length<=0?[]:(this.updateAfterPanelChange(t,[]),t)}batchInsertDefer(...e){const t=this._panels,n=L(this._flicking),i=t[0],r=G(this._align);return e.reduce((e,s)=>{var o;const a=U(s.index,t.length),l=t.slice(a),h=s.elements.map((e,t)=>this._createPanel(e,{index:a+t,align:r,flicking:n}));if(t.splice(a,0,...h),s.hasDOMInElements&&this._insertPanelElements(h,null!=(o=l[0])?o:null),n.panelsPerView>0){const e=i||h[0].resize();this._updatePanelSizeByGrid(e,h)}else h.forEach(e=>e.resize());return l.forEach(e=>{e.increaseIndex(h.length),e.updatePosition()}),[...e,...h]},[])}batchRemove(...e){const t=this.batchRemoveDefer(...e);return t.length<=0?[]:(this.updateAfterPanelChange([],t),t)}batchRemoveDefer(...e){const t=this._panels,n=L(this._flicking),{control:i}=n,r=i.activePanel;return e.reduce((e,n)=>{const{index:s,deleteCount:o}=n,a=U(s,t.length),l=t.slice(a+o),h=t.splice(a,o);return h.length<=0?[]:(l.forEach(e=>{e.decreaseIndex(h.length),e.updatePosition()}),n.hasDOMInElements&&this._removePanelElements(h),h.forEach(e=>e.destroy()),Y(h,r)&&i.resetActive(),[...e,...h])},[])}updateAfterPanelChange(e,t){var n;const i=L(this._flicking),{camera:r,control:s}=i,o=this._panels,a=s.activePanel;if(this._updateCameraAndControl(),i.autoResize&&i.useResizeObserver&&(e.forEach(e=>{e.element&&i.autoResizer.observe(e.element)}),t.forEach(e=>{e.element&&i.autoResizer.unobserve(e.element)})),this.render(),!i.animating)if(!a||a.removed)if(o.length<=0)r.lookAt(0);else{let e=null!=(n=null==a?void 0:a.index)?n:0;e>o.length-1&&(e=o.length-1),s.moveToPanel(o[e],{duration:0}).catch(()=>{})}else s.moveToPanel(a,{duration:0}).catch(()=>{});i.camera.updateOffset(),(e.length>0||t.length>0)&&(i.trigger(new m(I.PANEL_CHANGE,{added:e,removed:t})),this.checkPanelContentsReady([...e,...t]))}checkPanelContentsReady(e){const t=L(this._flicking),n=t.resizeOnContentsReady,i=this._panels;if(!n||t.virtualEnabled)return;if((e=e.filter(e=>(e=>e.element&&!!e.element.querySelector("img, video"))(e))).length<=0)return;const r=new Wn;e.forEach(e=>{e.loading=!0}),r.on("readyElement",n=>{if(!this._flicking)return void r.destroy();const s=e[n.index],o=t.camera,a=t.control,l=a.activePanel?o.getProgressInPanel(a.activePanel):0;s.loading=!1,s.resize(),i.slice(s.index+1).forEach(e=>e.updatePosition()),t.initialized&&(o.updateRange(),o.updateOffset(),o.updateAnchors(),a.animating||(a.updatePosition(l),a.updateInput()))}),r.on("preReady",e=>{this._flicking&&this.render(),e.readyCount===e.totalCount&&r.destroy()}),r.on("ready",()=>{this._flicking&&this.render(),r.destroy()}),r.check(e.map(e=>e.element))}_updateCameraAndControl(){const e=L(this._flicking),{camera:t,control:n}=e;t.updateRange(),t.updateOffset(),t.updateAnchors(),t.resetNeedPanelHistory(),n.updateInput()}_showOnlyVisiblePanels(e){const t=e.renderer.panels,n=e.camera.visiblePanels.reduce((e,t)=>(e[t.index]=!0,e),{});t.forEach(t=>{t.index in n||t.loading?t.markForShow():e.holding||t.markForHide()})}_updatePanelSizeByGrid(e,t){const n=L(this._flicking),i=n.panelsPerView;if(i<=0)throw new he(k.WRONG_OPTION("panelsPerView",i),C.WRONG_OPTION);if(t.length<=0)return;const r=(n.camera.size-(e.margin.prev+e.margin.next)*(i-1))/i,s=n.horizontal?{width:r}:{height:r},o=c({size:r,margin:e.margin},!n.horizontal&&{height:e.height});n.noPanelStyleOverride||this._strategy.updatePanelSizes(n,s),n.panels.forEach(e=>e.resize(o))}_removeAllChildsFromCamera(){const e=L(this._flicking).camera.element;for(;e.firstChild;)e.removeChild(e.firstChild)}_insertPanelElements(e,t=null){const n=L(this._flicking).camera.element,i=(null==t?void 0:t.element)||null,r=document.createDocumentFragment();e.forEach(e=>r.appendChild(e.element)),n.insertBefore(r,i)}_removePanelElements(e){const t=L(this._flicking).camera.element;e.forEach(e=>{t.removeChild(e.element)})}_afterRender(){const e=L(this._flicking);if(e.camera.applyTransform(),e.useCSSOrder){const t=e.renderer.panels.filter(e=>e.rendered);this._strategy.getRenderingIndexesByOrder(e).forEach((e,n)=>{t[e].element&&(t[e].element.style.order=`${n}`)})}}};class Un extends Xn{render(){return d(this,null,function*(){const e=L(this._flicking),t=this._strategy;t.updateRenderingPanels(e),t.renderPanels(e),this._resetPanelElementOrder(),this._afterRender()})}_collectPanels(){const e=L(this._flicking),t=e.camera;this._removeAllTextNodes(),this._panels=this._strategy.collectPanels(e,t.children)}_createPanel(e,t){return this._strategy.createPanel(e,t)}_resetPanelElementOrder(){const e=L(this._flicking),t=e.camera.element;let n=[];n=e.useCSSOrder?this.getRenderedPanels().map(e=>e.element).reverse():this._strategy.getRenderingElementsByOrder(e).reverse(),n.forEach((e,i)=>{const r=n[i-1]?n[i-1]:null;e.nextElementSibling!==r&&t.insertBefore(e,r)})}_removeAllTextNodes(){const e=L(this._flicking).camera.element;H(e.childNodes).forEach(t=>{t.nodeType===Node.TEXT_NODE&&e.removeChild(t)})}}class Yn{get element(){return this._elProvider.element}get elementProvider(){return this._elProvider}get index(){return this._index}get position(){return this._pos+this._alignPos}get size(){return this._size}get sizeIncludingMargin(){return this._size+this._margin.prev+this._margin.next}get height(){return this._height}get margin(){return this._margin}get alignPosition(){return this._alignPos}get removed(){return this._removed}get rendered(){return this._rendered}get loading(){return this._loading}get range(){return{min:this._pos,max:this._pos+this._size}}get toggled(){return this._toggled}get toggleDirection(){return this._toggleDirection}get offset(){const e=this._toggleDirection,t=this._flicking.camera.rangeDiff;return e!==x.NONE&&this._toggled?e===x.PREV?-t:t:0}get progress(){const e=this._flicking;return this.index-e.camera.progress}get outsetProgress(){const e=this.position+this.offset,t=this._alignPos,n=this._flicking.camera,i=n.position;if(i===e)return 0;if(i<e){const r=e+(n.size-n.alignPosition)+t;return-Q(i,e,r)}{const r=e-(n.alignPosition+this._size-t);return 1-Q(i,r,e)}}get visibleRatio(){const e=this.range,t=this._size,n=this.offset,i=this._flicking.camera.visibleRange,r=e.min+n,s=e.max+n;if(s<=i.min||r>=i.max)return 0;let o=t;return i.min>r&&(o-=i.min-r),i.max<s&&(o-=s-i.max),o/t}set loading(e){this._loading=e}get align(){return this._align}set align(e){this._align=e,this._updateAlignPos()}constructor(e){const{index:t,align:n,flicking:i,elementProvider:r}=e;this._index=t,this._flicking=i,this._elProvider=r,this._align=n,this._removed=!1,this._rendered=!0,this._loading=!1,this._resetInternalStates()}markForShow(){this._rendered=!0,this._elProvider.show(this._flicking)}markForHide(){this._rendered=!1,this._elProvider.hide(this._flicking)}resize(e){var t;const n=this.element,i=this._flicking,{horizontal:r,useFractionalSize:s}=i;if(!n)return this;if(e)this._size=e.size,this._margin=c({},e.margin),this._height=null!=(t=e.height)?t:re({el:n,horizontal:!1,useFractionalSize:s,useOffset:!0,style:J(n)});else{const e=J(n);this._size=re({el:n,horizontal:r,useFractionalSize:s,useOffset:!0,style:e}),this._margin=r?{prev:parseFloat(e.marginLeft||"0"),next:parseFloat(e.marginRight||"0")}:{prev:parseFloat(e.marginTop||"0"),next:parseFloat(e.marginBottom||"0")},this._height=r?re({el:n,horizontal:!1,useFractionalSize:s,useOffset:!0,style:e}):this._size}return this.updatePosition(),this._updateAlignPos(),this}setSize(e){return ee(this.element,e),this}contains(e){var t;return!!(null==(t=this.element)?void 0:t.contains(e))}destroy(){this._resetInternalStates(),this._removed=!0}includePosition(e,t=!1){return this.includeRange(e,e,t)}includeRange(e,t,n=!1){const i=this._margin,r=this.range;return n&&(r.min-=i.prev,r.max+=i.next),t>=r.min&&e<=r.max}isVisibleOnRange(e,t){const n=this.range;return t>n.min&&e<n.max}focus(e){return this._flicking.moveTo(this._index,e)}prev(){const e=this._index,t=this._flicking,n=t.renderer,i=n.panelCount;return 1===i?null:t.circularEnabled?n.getPanel(0===e?i-1:e-1):n.getPanel(e-1)}next(){const e=this._index,t=this._flicking,n=t.renderer,i=n.panelCount;return 1===i?null:t.circularEnabled?n.getPanel(e===i-1?0:e+1):n.getPanel(e+1)}increaseIndex(e){return this._index+=Math.max(e,0),this}decreaseIndex(e){return this._index-=Math.max(e,0),this}updatePosition(){const e=this._flicking.renderer.panels[this._index-1];return this._pos=e?e.range.max+e.margin.next+this._margin.prev:this._margin.prev,this}toggle(e,t){const n=this._toggleDirection,i=this._togglePosition;if(n===x.NONE||t===e)return!1;const r=this._toggled;return t>e?i>=e&&i<=t&&(this._toggled=n===x.NEXT):i<=e&&i>=t&&(this._toggled=n!==x.NEXT),r!==this._toggled}updateCircularToggleDirection(){const e=this._flicking;if(!e.circularEnabled)return this._toggleDirection=x.NONE,this._togglePosition=0,this._toggled=!1,this;const t=e.camera,n=t.range,i=t.alignPosition,r=t.visibleRange,s=r.max-r.min,o=n.min-i,a=n.max-i+s,l=this.includeRange(a-s,a,!1),h=this.includeRange(o,o+s,!1);return this._toggled=!1,l?(this._toggleDirection=x.PREV,this._togglePosition=this.range.max+n.min-n.max+i,this.toggle(1/0,t.position)):h?(this._toggleDirection=x.NEXT,this._togglePosition=this.range.min+n.max-s+i,this.toggle(-1/0,t.position)):(this._toggleDirection=x.NONE,this._togglePosition=0),this}_updateAlignPos(){this._alignPos=F(this._align,this._size)}_resetInternalStates(){this._size=0,this._pos=0,this._margin={prev:0,next:0},this._height=0,this._alignPos=0,this._toggled=!1,this._togglePosition=0,this._toggleDirection=x.NONE}}class $n{constructor(e){const{providerCtor:t}=e;this._providerCtor=t}renderPanels(){}getRenderingIndexesByOrder(e){const t=e.renderer.panels.filter(e=>e.rendered),n=t.filter(e=>e.toggled&&e.toggleDirection===x.PREV),i=t.filter(e=>e.toggled&&e.toggleDirection===x.NEXT);return[...n,...t.filter(e=>!e.toggled),...i].map(e=>e.index)}getRenderingElementsByOrder(e){const t=e.panels;return this.getRenderingIndexesByOrder(e).map(e=>t[e].element)}updateRenderingPanels(e){e.renderOnlyVisible?this._showOnlyVisiblePanels(e):e.panels.forEach(e=>e.markForShow())}collectPanels(e,t){const n=G(e.renderer.align);return t.map((t,i)=>new Yn({index:i,elementProvider:new this._providerCtor(t),align:n,flicking:e}))}createPanel(e,t){return new Yn(u(c({},t),{elementProvider:new this._providerCtor(e)}))}updatePanelSizes(e,t){e.panels.forEach(e=>e.setSize(t))}_showOnlyVisiblePanels(e){const t=e.renderer.panels,n=e.camera,i=n.visiblePanels.reduce((e,t)=>(e[t.index]=!0,e),{});t.forEach(t=>{t.index in i||t.loading?t.markForShow():e.holding||t.markForHide()}),n.updateOffset()}}class Kn extends Yn{get element(){return this._elProvider.element}get cachedInnerHTML(){return this._cachedInnerHTML}get elementIndex(){const e=this._flicking,t=e.panelsPerView+1,n=e.panelCount;let i=this._index;return this._toggled&&(i=this._toggleDirection===x.NEXT?i+n:i-n),ne(i,t)}constructor(e){super(e),e.elementProvider.init(this),this._elProvider=e.elementProvider,this._cachedInnerHTML=null}cacheRenderResult(e){this._cachedInnerHTML=e}uncacheRenderResult(){this._cachedInnerHTML=null}render(){const e=this._flicking,{renderPanel:t,cache:n}=e.virtual,i=this._elProvider.element,r=this._cachedInnerHTML||t(this,this._index);r!==i.innerHTML&&(i.innerHTML=r,n&&this.cacheRenderResult(r))}increaseIndex(e){return this.uncacheRenderResult(),super.increaseIndex(e)}decreaseIndex(e){return this.uncacheRenderResult(),super.decreaseIndex(e)}}class qn{renderPanels(e){const t=e.virtual,n=e.visiblePanels,i=ie(e.panelsPerView+1);n.forEach(e=>{const n=e.elementIndex;e.render(),t.show(n),i[n]=-1}),i.filter(e=>e>=0).forEach(e=>{t.hide(e)})}getRenderingIndexesByOrder(e){const t=e.virtual,n=[...e.visiblePanels].filter(e=>e.rendered).sort((e,t)=>e.position+e.offset-(t.position+t.offset));if(n.length<=0)return t.elements.map((e,t)=>t);return[...n.map(e=>e.elementIndex),...t.elements.map((e,t)=>u(c({},e),{idx:t})).filter(e=>!e.visible).map(e=>e.idx)]}getRenderingElementsByOrder(e){const t=e.virtual.elements;return this.getRenderingIndexesByOrder(e).map(e=>t[e].nativeElement)}updateRenderingPanels(e){const t=e.renderer.panels,n=e.camera,i=n.visiblePanels.reduce((e,t)=>(e[t.index]=!0,e),{});t.forEach(e=>{e.index in i||e.loading?e.markForShow():e.markForHide()}),n.updateOffset()}collectPanels(e){const t=G(e.renderer.align);return ie(e.virtual.initialPanelCount).map(n=>new Kn({index:n,elementProvider:new fn(e),align:t,flicking:e}))}createPanel(e,t){return new Kn(u(c({},t),{elementProvider:new fn(t.flicking)}))}updatePanelSizes(e,t){e.virtual.elements.forEach(e=>{ee(e.nativeElement,t)}),e.panels.forEach(e=>e.setSize(t))}}const Zn=Object.freeze(Object.defineProperty({__proto__:null,ExternalRenderer:class extends Xn{_removePanelElements(e){}_removeAllChildsFromCamera(){}},NormalRenderingStrategy:$n,Renderer:Xn,VanillaRenderer:Un,VirtualRenderingStrategy:qn},Symbol.toStringTag,{value:"Module"})),Qn=class extends v{constructor(e,t={}){super(),this._scheduleResize=!1;const{align:n=E.CENTER,defaultIndex:i=0,horizontal:r=!0,circular:s=!1,circularFallback:o=y.LINEAR,bound:a=!1,adaptive:h=!1,panelsPerView:c=-1,noPanelStyleOverride:u=!1,resizeOnContentsReady:d=!1,nested:g=!1,needPanelThreshold:_=0,preventEventsBeforeInit:f=!0,deceleration:p=.0075,duration:v=500,easing:m=e=>1-l(1-e,3),inputType:x=["mouse","touch"],moveType:P="snap",threshold:b=40,dragThreshold:O=1,interruptable:T=!0,bounce:R="20%",iOSEdgeSwipeThreshold:I=30,preventClickOnDrag:w=!0,preventDefaultOnDrag:A=!1,disableOnInit:S=!1,changeOnHold:C=!1,renderOnlyVisible:k=!1,virtual:N=null,autoInit:M=!0,autoResize:z=!0,useResizeObserver:L=!0,resizeDebounce:H=0,observePanelResize:F=!1,maxResizeDebounce:V=100,useFractionalSize:j=!1,externalRenderer:B=null,renderExternal:G=null,optimizeSizeUpdate:W=!1,animationThreshold:X=.5,useCSSOrder:U=!1}=t;this._initialized=!1,this._plugins=[],this._isResizing=!1,this._align=n,this._defaultIndex=i,this._horizontal=r,this._circular=s,this._circularFallback=o,this._bound=a,this._adaptive=h,this._panelsPerView=c,this._noPanelStyleOverride=u,this._resizeOnContentsReady=d,this._nested=g,this._virtual=N,this._needPanelThreshold=_,this._preventEventsBeforeInit=f,this._deceleration=p,this._duration=v,this._easing=m,this._inputType=x,this._moveType=P,this._threshold=b,this._dragThreshold=O,this._interruptable=T,this._bounce=R,this._iOSEdgeSwipeThreshold=I,this._preventClickOnDrag=w,this._preventDefaultOnDrag=A,this._disableOnInit=S,this._changeOnHold=C,this._renderOnlyVisible=k,this._autoInit=M,this._autoResize=z,this._useResizeObserver=L,this._resizeDebounce=H,this._maxResizeDebounce=V,this._observePanelResize=F,this._useFractionalSize=j,this._externalRenderer=B,this._renderExternal=G,this._optimizeSizeUpdate=W,this._animationThreshold=X,this._useCSSOrder=U,this._viewport=new pn(this,D(e)),this._autoResizer=new gn(this),this._renderer=this._createRenderer(),this._camera=this._createCamera(),this._control=this._createControl(),this._virtualManager=new vn(this,N),this._autoInit&&this.init()}get control(){return this._control}get camera(){return this._camera}get renderer(){return this._renderer}get viewport(){return this._viewport}get autoResizer(){return this._autoResizer}get initialized(){return this._initialized}get circularEnabled(){return this._camera.circularEnabled}get virtualEnabled(){return this._panelsPerView>0&&null!=this._virtual}get index(){return this._control.activeIndex}get element(){return this._viewport.element}get currentPanel(){return this._control.activePanel}get panels(){return this._renderer.panels}get panelCount(){return this._renderer.panelCount}get visiblePanels(){return this._camera.visiblePanels}get animating(){return this._control.animating}get holding(){return this._control.holding}get activePlugins(){return this._plugins}get align(){return this._align}get defaultIndex(){return this._defaultIndex}get horizontal(){return this._horizontal}get circular(){return this._circular}get circularFallback(){return this._circularFallback}get bound(){return this._bound}get adaptive(){return this._adaptive}get panelsPerView(){return this._panelsPerView}get noPanelStyleOverride(){return this._noPanelStyleOverride}get resizeOnContentsReady(){return this._resizeOnContentsReady}get nested(){return this._nested}get needPanelThreshold(){return this._needPanelThreshold}get preventEventsBeforeInit(){return this._preventEventsBeforeInit}get deceleration(){return this._deceleration}get easing(){return this._easing}get duration(){return this._duration}get inputType(){return this._inputType}get moveType(){return this._moveType}get threshold(){return this._threshold}get dragThreshold(){return this._dragThreshold}get animationThreshold(){return this._animationThreshold}get useCSSOrder(){return this._useCSSOrder}get interruptable(){return this._interruptable}get bounce(){return this._bounce}get iOSEdgeSwipeThreshold(){return this._iOSEdgeSwipeThreshold}get preventClickOnDrag(){return this._preventClickOnDrag}get preventDefaultOnDrag(){return this._preventDefaultOnDrag}get disableOnInit(){return this._disableOnInit}get changeOnHold(){return this._changeOnHold}get renderOnlyVisible(){return this._renderOnlyVisible}get virtual(){return this._virtualManager}get autoInit(){return this._autoInit}get autoResize(){return this._autoResize}get useResizeObserver(){return this._useResizeObserver}get observePanelResize(){return this._observePanelResize}get resizeDebounce(){return this._resizeDebounce}get maxResizeDebounce(){return this._maxResizeDebounce}get useFractionalSize(){return this._useFractionalSize}get externalRenderer(){return this._externalRenderer}get renderExternal(){return this._renderExternal}get optimizeSizeUpdate(){return this._optimizeSizeUpdate}set align(e){this._align=e,this._renderer.align=e,this._camera.align=e,this.resize()}set defaultIndex(e){this._defaultIndex=e}set horizontal(e){this._horizontal=e,this._control.controller.updateDirection(),this.resize()}set circular(e){this._circular=e,this.resize()}set bound(e){this._bound=e,this.resize()}set adaptive(e){this._adaptive=e,this.resize()}set panelsPerView(e){this._panelsPerView=e,this.resize()}set noPanelStyleOverride(e){this._noPanelStyleOverride=e,this.resize()}set resizeOnContentsReady(e){this._resizeOnContentsReady=e,e&&this._renderer.checkPanelContentsReady(this._renderer.panels)}set nested(e){this._nested=e;const t=this._control.controller.axes;t&&(t.options.nested=e)}set needPanelThreshold(e){this._needPanelThreshold=e}set preventEventsBeforeInit(e){this._preventEventsBeforeInit=e}set deceleration(e){this._deceleration=e;const t=this._control.controller.axes;t&&(t.options.deceleration=e)}set easing(e){this._easing=e;const t=this._control.controller.axes;t&&(t.options.easing=e)}set duration(e){this._duration=e}set inputType(e){this._inputType=e;const t=this._control.controller.panInput;t&&(t.options.inputType=e)}set moveType(e){this._moveType=e;const t=this._control,n=this._createControl(),i=t.activePanel;n.copy(t);const r=i?this._camera.getProgressInPanel(i):0;this._control=n,this._control.updatePosition(r),this._control.updateInput()}set threshold(e){this._threshold=e}set dragThreshold(e){this._dragThreshold=e;const t=this._control.controller.panInput;t&&(t.options.threshold=e)}set animationThreshold(e){this._animationThreshold=e}set useCSSOrder(e){this._useCSSOrder=e}set interruptable(e){this._interruptable=e;const t=this._control.controller.axes;t&&(t.options.interruptable=e)}set bounce(e){this._bounce=e,this._control.updateInput()}set iOSEdgeSwipeThreshold(e){this._iOSEdgeSwipeThreshold=e;const t=this._control.controller.panInput;t&&(t.options.iOSEdgeSwipeThreshold=e)}set preventClickOnDrag(e){if(e===this._preventClickOnDrag)return;const t=this._control.controller;e?t.addPreventClickHandler():t.removePreventClickHandler(),this._preventClickOnDrag=e}set preventDefaultOnDrag(e){this._preventDefaultOnDrag=e;const t=this._control.controller.panInput;t&&(t.options.preventDefaultOnDrag=e)}set disableOnInit(e){this._disableOnInit=e}set changeOnHold(e){this._changeOnHold=e}set renderOnlyVisible(e){this._renderOnlyVisible=e,this._renderer.render()}set autoResize(e){this._autoResize=e,this._initialized&&(e?this._autoResizer.enable():this._autoResizer.disable())}set useResizeObserver(e){this._useResizeObserver=e,this._initialized&&this._autoResize&&this._autoResizer.enable()}set observePanelResize(e){this._observePanelResize=e,this._initialized&&this._autoResize&&(e?this._autoResizer.observePanels():this._autoResizer.unobservePanels())}set optimizeSizeUpdate(e){this._optimizeSizeUpdate=e}init(){if(this._initialized)return Promise.resolve();const e=this._camera,t=this._renderer,n=this._control,i=this._virtualManager,r=this.trigger,s=this._preventEventsBeforeInit;return e.init(),i.init(),t.init(this),n.init(this),s&&(this.trigger=()=>this),this._initialResize(),this._moveToInitialPanel(),this._autoResize&&this._autoResizer.enable(),this._preventClickOnDrag&&n.controller.addPreventClickHandler(),this._disableOnInit&&this.disableInput(),t.checkPanelContentsReady(t.panels),this._initialized=!0,t.render().then(()=>{this._plugins.forEach(e=>e.init(this)),s&&(this.trigger=r),this.trigger(new m(I.READY))})}destroy(){this.off(),this._autoResizer.disable(),this._control.destroy(),this._camera.destroy(),this._renderer.destroy(),this._plugins.forEach(e=>e.destroy()),this._scheduleResize=!1,this._initialized=!1,this._isResizing=!1}prev(e=this._duration){var t,n,i;return this.moveTo(null!=(i=null==(n=null==(t=this._control.activePanel)?void 0:t.prev())?void 0:n.index)?i:-1,e,x.PREV)}next(e=this._duration){var t,n,i;return this.moveTo(null!=(i=null==(n=null==(t=this._control.activePanel)?void 0:t.next())?void 0:n.index)?i:this._renderer.panelCount,e,x.NEXT)}moveTo(e,t=this._duration,n=x.NONE){const i=this._renderer,r=i.panelCount,s=i.getPanel(e);return s?this._control.animating?Promise.reject(new he(k.ANIMATION_ALREADY_PLAYING,C.ANIMATION_ALREADY_PLAYING)):(this._control.holding&&this._control.controller.release(),this._control.moveToPanel(s,{duration:t,direction:n})):Promise.reject(new he(k.INDEX_OUT_OF_RANGE(e,0,r-1),C.INDEX_OUT_OF_RANGE))}updateAnimation(e,t,n){if(!this._control.animating)return;const i=this._renderer,r=i.panelCount,s=i.getPanel(e);if(!s)throw new he(k.INDEX_OUT_OF_RANGE(e,0,r-1),C.INDEX_OUT_OF_RANGE);this._control.updateAnimation(s,t,n)}stopAnimation(){this._control.animating&&this._control.stopAnimation()}getPanel(e){return this._renderer.getPanel(e)}enableInput(){return this._control.enable(),this}disableInput(){return this._control.disable(),this}getStatus(e={}){var t,n;const{index:i=!0,position:r=!0,includePanelHTML:s=!1,visiblePanelsOnly:o=!1}=e,a=this._camera,l={panels:(o?this.visiblePanels:this.panels).map(e=>{const t={index:e.index};return s&&(t.html=e.element.outerHTML),t})};if(i&&(l.index=this.index),r){const e=a.findNearestAnchor(a.position);e&&(l.position={panel:e.panel.index,progressInPanel:a.getProgressInPanel(e.panel)})}if(o){const e=this.visiblePanels;l.visibleOffset=null!=(n=null==(t=e[0])?void 0:t.index)?n:0}return l}setStatus(e){var t;if(!this._initialized)throw new he(k.NOT_INITIALIZED,C.NOT_INITIALIZED);const{index:n,position:i,visibleOffset:r,panels:s}=e,o=this._renderer,a=this._control;if((null==(t=s[0])?void 0:t.html)&&!this._renderExternal&&(o.batchRemove({index:0,deleteCount:this.panels.length,hasDOMInElements:!0}),o.batchInsert({index:0,elements:X(s.map(e=>e.html)),hasDOMInElements:!0})),null!=n){const e=r?n-r:n;this.moveTo(e,0).catch(()=>{})}if(i&&this._moveType===P.FREE_SCROLL){const{panel:e,progressInPanel:t}=i,n=r?e-r:e,s=o.panels[n].range,l=s.min+(s.max-s.min)*t;a.moveToPosition(l,0).catch(()=>{})}}addPlugins(...e){return this._initialized&&e.forEach(e=>e.init(this)),this._plugins.push(...e),this}removePlugins(...e){return e.forEach(e=>{const t=Z(this._plugins,t=>t===e);t>=0&&(e.destroy(),this._plugins.splice(t,1))}),this}resize(){return d(this,null,function*(){if(!this._initialized)return;if(this._isResizing)return void(this._scheduleResize=!0);this._scheduleResize=!1,this._isResizing=!0;const e=this._viewport,t=this._renderer,n=this._camera,i=this._control,r=i.activePanel,s=e.width,o=e.height,a=r?n.getProgressInPanel(r):0;if(this.trigger(new m(I.BEFORE_RESIZE,{width:s,height:o,element:e.element})),e.resize(),this._optimizeSizeUpdate?(this.horizontal&&e.width!==s||!this.horizontal&&e.height!==o)&&(yield t.forceRenderAllPanels()):yield t.forceRenderAllPanels(),!this._initialized)return;if(t.updatePanelSize(),n.updateAlignPos(),n.updateRange(),n.updateAnchors(),n.updateAdaptiveHeight(),n.updatePanelOrder(),n.updateOffset(),yield t.render(),!this._initialized)return;i.animating||(i.updatePosition(a),i.updateInput());const l=e.width,h=e.height,c=l!==s||h!==o;this.trigger(new m(I.AFTER_RESIZE,{width:e.width,height:e.height,prev:{width:s,height:o},sizeChanged:c,element:e.element})),this._isResizing=!1,this._scheduleResize&&this.resize()})}append(e){return this.insert(this._renderer.panelCount,e)}prepend(e){return this.insert(0,e)}insert(e,t){if(this._renderExternal)throw new he(k.NOT_ALLOWED_IN_FRAMEWORK,C.NOT_ALLOWED_IN_FRAMEWORK);return this._renderer.batchInsert({index:e,elements:X(t),hasDOMInElements:!0})}remove(e,t=1){if(this._renderExternal)throw new he(k.NOT_ALLOWED_IN_FRAMEWORK,C.NOT_ALLOWED_IN_FRAMEWORK);return this._renderer.batchRemove({index:e,deleteCount:t,hasDOMInElements:!0})}_createControl(){var e;const t=this._moveType,n=Object.keys(P).map(e=>P[e]),i=Array.isArray(t)?t[0]:t,r=Array.isArray(t)&&null!=(e=t[1])?e:{};if(!Y(n,i))throw new he(k.WRONG_OPTION("moveType",JSON.stringify(t)),C.WRONG_OPTION);switch(i){case P.SNAP:return new cn(r);case P.FREE_SCROLL:return new hn(r);case P.STRICT:return new un(r)}}_createCamera(){return this._circular&&this._bound&&console.warn('"circular" and "bound" option cannot be used together, ignoring bound.'),new _e(this,{align:this._align})}_createRenderer(){const e=this._externalRenderer;return this._virtual&&this._panelsPerView<=0&&console.warn('"virtual" and "panelsPerView" option should be used together, ignoring virtual.'),e||(this._renderExternal?this._createExternalRenderer():this._createVanillaRenderer())}_createExternalRenderer(){const{renderer:e,rendererOptions:t}=this._renderExternal;return new e(c({align:this._align},t))}_createVanillaRenderer(){const e=this.virtualEnabled;return new Un({align:this._align,strategy:e?new qn:new $n({providerCtor:_n})})}_moveToInitialPanel(){const e=this._renderer,t=this._control,n=this._camera,i=e.getPanel(this._defaultIndex)||e.getPanel(0);if(!i)return;const r=n.findNearestAnchor(i.position),s=r&&i.position!==r.panel.position&&i.index!==r.panel.index?r.panel:i;if(t.setActive(s,null,!1),!r)throw new he(k.POSITION_NOT_REACHABLE(s.position),C.POSITION_NOT_REACHABLE);let o=s.position;n.canReach(s)||(o=r.position),n.lookAt(o),t.updateInput(),n.updateOffset()}_initialResize(){const e=this._viewport,t=this._renderer,n=this._camera,i=this._control;this.trigger(new m(I.BEFORE_RESIZE,{width:0,height:0,element:e.element})),e.resize(),t.updatePanelSize(),n.updateAlignPos(),n.updateRange(),n.updateAnchors(),n.updateOffset(),i.updateInput();const r=e.width,s=e.height,o=0!==r||0!==s;this.trigger(new m(I.AFTER_RESIZE,{width:e.width,height:e.height,prev:{width:0,height:0},sizeChanged:o,element:e.element}))}};Qn.VERSION="4.16.1-beta.0";let Jn=Qn;const ei={HOLD_START:"sideHoldStart",HOLD_END:"sideHoldEnd",MOVE_START:"sideMoveStart",MOVE:"sideMove",MOVE_END:"sideMoveEnd",WILL_CHANGE:"sideWillChange",CHANGED:"sideChanged",WILL_RESTORE:"sideWillRestore",RESTORED:"sideRestored"};const ti=Object.freeze(Object.defineProperty({__proto__:null,CrossFlicking:class extends Jn{constructor(e,t){super(e,t),this._syncToCategory=(e,t)=>{this._disableIndexSync||(this.stopAnimation(),this._sideFlicking.forEach((n,i)=>{const{start:r,end:s}=this._sideState[i];r<=e&&s>=e&&t!==i&&(n.stopAnimation(),n.moveTo(e,0),this.moveTo(i,0))}))},this._setDraggable=(e,t)=>{if(!this._disableSlideOnHold)return;const n=this._originalDragThreshold,i=t?n&&n>=10?n:10:1/0;e===T.HORIZONTAL===this.horizontal?this.dragThreshold=i:e===T.VERTICAL===this.horizontal&&this._sideFlicking.forEach(e=>{e.dragThreshold=i})},this._setPreviousSideIndex=()=>{this._sideFlicking.forEach((e,t)=>{const{start:n,end:i}=this._sideState[t];this._preserveIndex?this._nextIndex!==t&&(e.index<n?(e.stopAnimation(),e.moveTo(n,0)):e.index>i&&(e.stopAnimation(),e.moveTo(i,0))):this._nextIndex!==t&&e.moveTo(n,0)})},this._addSideIndex=e=>{e.sideIndex=this._sideFlicking[e.index].index},this._onHorizontalHoldStart=()=>{this._setDraggable(T.HORIZONTAL,!0),this._moveDirection=null},this._onHorizontalMove=e=>{e.isTrusted&&!this._moveDirection&&(this._setDraggable(T.VERTICAL,!1),this._moveDirection=T.HORIZONTAL)},this._onHorizontalMoveEnd=e=>{const t=this.visiblePanels;t.length>1?this._nextIndex="NEXT"===e.direction?t[1].index:t[0].index:this._nextIndex=t[0].index,this._setDraggable(T.VERTICAL,!0),this._moveDirection=null,requestAnimationFrame(()=>this._setPreviousSideIndex()),e.isTrusted&&this._syncToCategory(this._sideFlicking[this._nextIndex].index,this._nextIndex)},this._onSideHoldStart=()=>{this._setDraggable(T.VERTICAL,!0),this._moveDirection=null},this._onSideMove=e=>{e.isTrusted&&!this._moveDirection&&(this._setDraggable(T.HORIZONTAL,!1),this._moveDirection=T.VERTICAL)},this._onSideMoveEnd=()=>{this._setDraggable(T.HORIZONTAL,!0),this._moveDirection=null},this._onSideChanged=e=>{this.visiblePanels.length<2&&this._sideFlicking[this.index]===e.currentTarget&&this._syncToCategory(e.index,this.index)};const{sideOptions:n={},preserveIndex:i=!0,disableSlideOnHold:r=!0,disableIndexSync:s=!1}=t;this._moveDirection=null,this._nextIndex=0,this._originalDragThreshold=this.dragThreshold,this._sideOptions=n,this._preserveIndex=i,this._disableSlideOnHold=r,this._disableIndexSync=s}get sideFlicking(){return this._sideFlicking}get sideIndex(){return this._sideFlicking.map(e=>e.index)}get sideState(){return this._sideState}get sideOptions(){return this._sideOptions}get preserveIndex(){return this._preserveIndex}get disableSlideOnHold(){return this._disableSlideOnHold}get disableIndexSync(){return this._disableIndexSync}set sideOptions(e){this._sideOptions=e}set preserveIndex(e){this._preserveIndex=e}set disableSlideOnHold(e){this._disableSlideOnHold=e}set disableIndexSync(e){this._disableIndexSync=e}init(){return super.init().then(()=>{this._sideState=this._createSideState(),this._sideFlicking=this._createSideFlicking(),this._addComponentEvents()})}destroy(){this._sideFlicking.forEach(e=>{e.destroy()}),super.destroy()}_addComponentEvents(){this.on(I.HOLD_START,this._onHorizontalHoldStart),this.on(I.MOVE,this._onHorizontalMove),this.on(I.MOVE_END,this._onHorizontalMoveEnd),[I.CHANGED,I.WILL_CHANGE].forEach(e=>{this.on(e,this._addSideIndex)}),this._sideFlicking.forEach((e,t)=>{e.on(I.HOLD_START,this._onSideHoldStart),e.on(I.MOVE,this._onSideMove),e.on(I.MOVE_END,this._onSideMoveEnd),e.on(I.CHANGED,this._onSideChanged),Object.keys(ei).forEach(n=>{e.on(I[n],e=>{this.trigger(new m(ei[n],c({mainIndex:t},e)))})})})}_createSideState(){const e=this.element,t=this.camera.element,n=H(t.children);let i=[];if(ae(e,"data-cross-").structure)i=this._getSideStateFromCrossStructure(n);else{const e=this._getGroupFromAttribute(n),t=Object.keys(e);t.length?(i=this._getSideStateFromGroup(e),this.remove(0,this.panelCount-t.length)):i=this._getSideStateFromPanels(n),this._createCrossStructure(i)}return this.resize(),i}_createCrossStructure(e){const t=document.createElement("div");let n="";t.classList.add(b.CAMERA),e.forEach((e,t)=>{const i=this.camera.children[t];n+=e.element.innerHTML,Array.from(i.attributes).forEach(e=>i.removeAttribute(e.name))}),t.innerHTML=n,e.forEach((e,n)=>{const i=this.camera.children[n];[b.VIEWPORT,b.VERTICAL].forEach(e=>{i.classList.contains(e)||i.classList.add(e)}),i.innerHTML=t.outerHTML}),this.element.setAttribute("data-cross-structure","true")}_getGroupFromAttribute(e){const t=[],n={};return e.forEach(e=>{const i=ae(e,"data-cross-").groupkey;i&&!Y(t,i)?(t.push(i),n[i]=[e]):i&&n[i].push(e)}),n}_getSideStateFromGroup(e){return Object.keys(e).reduce((t,n)=>{const i=t.length?+t[t.length-1].end+1:0,r=e[n].reduce((e,t)=>(e.innerHTML+=t.outerHTML,e),document.createElement("div"));return[...t,{key:n,start:i,end:i+e[n].length-1,element:r}]},[])}_getSideStateFromPanels(e){return e.reduce((e,t,n)=>{const i=e.length?+e[e.length-1].end+1:0;return[...e,{key:n.toString(),start:i,end:i+t.children.length-1,element:t}]},[])}_getSideStateFromCrossStructure(e){const t=this._getGroupFromAttribute(e);return this._getSideStateFromGroup(t)}_createSideFlicking(){return this.sideState.map((e,t)=>new Jn(this.camera.children[t],u(c({},this.sideOptions),{horizontal:!1,panelsPerView:1,defaultIndex:e.start})))}},SIDE_EVENTS:ei},Symbol.toStringTag,{value:"Module"})),ni=Object.freeze(Object.defineProperty({__proto__:null,AnchorPoint:A,Panel:Yn,VanillaElementProvider:_n,Viewport:pn,VirtualElementProvider:fn,VirtualManager:vn,VirtualPanel:Kn},Symbol.toStringTag,{value:"Module"})),ii=e=>{const t="object"==typeof e?e.camera:e;return si(t)},ri=e=>{const t="object"==typeof e?e.panel:e;return B(si(t))},si=e=>{if("number"==typeof e)return`${e}px`;switch(e){case E.CENTER:return"50%";case E.NEXT:return"100%";case E.PREV:return"0%";default:return e}},oi=(e,t,n,i,r)=>e.batchInsertDefer(...t.added.slice(i,r).map((e,t)=>({index:e,elements:[n[t]],hasDOMInElements:!1}))),ai=(e,t,n)=>{const i=e.panels.slice(t,n);return e.batchRemoveDefer({index:t,deleteCount:i.length,hasDOMInElements:!1})},li=Object.freeze(Object.defineProperty({__proto__:null,getDefaultCameraTransform:(e=E.CENTER,t=!0,n)=>{const i=ii(e),r=ri(e);if(null==r)return"";const s=`calc(${i} - (${n||"0px"} * ${r.percentage}) - ${r.absolute}px)`;return t?`translate(${s})`:`translate(0, ${s})`},getRenderingPanels:(e,t)=>{const n=t.removed.reduce((e,t)=>(e[t]=!0,e),{}),i=t.maintained.reduce((e,[t,n])=>(e[t]=n,e),{}),r=e.panels.filter(e=>!n[e.index]);return e.useCSSOrder||r.sort((e,t)=>e.position+e.offset-(t.position+t.offset)),[...r.map(e=>t.list[i[e.index]]),...t.added.map(e=>t.list[e])]},sync:(e,t,n)=>{const i=e.renderer,r=i.panels,s=[...t.prevList],o=[],a=[];if(t.removed.length>0){let e=-1,n=-1;t.removed.forEach(t=>{e<0&&(e=t),n>=0&&t!==n-1?(a.push(...ai(i,n,e+1)),e=t,n=t):n=t,s.splice(t,1)}),a.push(...ai(i,n,e+1))}if(t.ordered.forEach(([e,t])=>{const n=r.splice(e,1)[0];r.splice(t,0,n)}),t.ordered.length>0&&(r.forEach((e,t)=>{const n=t-e.index;n>0?e.increaseIndex(n):e.decreaseIndex(-n)}),r.sort((e,t)=>e.index-t.index),r.forEach(e=>{e.updatePosition()})),t.added.length>0){let e=-1,r=-1;const a=n.slice(s.length);t.added.forEach((n,s)=>{e<0&&(e=s),r>=0&&n!==r+1?(o.push(...oi(i,t,a,e,s+1)),e=-1,r=-1):r=n}),e>=0&&o.push(...oi(i,t,a,e))}if(t.added.length>0||t.removed.length>0)i.updateAfterPanelChange(o,a);else if(t.ordered.length>0){const t=e.camera;t.updateRange(),t.updateOffset(),t.updateAnchors(),t.resetNeedPanelHistory()}},withFlickingMethods:(e,t)=>{[v.prototype,Jn.prototype].forEach(n=>{Object.getOwnPropertyNames(n).filter(t=>!e[t]&&0!==t.indexOf("_")&&"constructor"!==t).forEach(i=>{const r=Object.getOwnPropertyDescriptor(n,i);if(r.value)Object.defineProperty(e,i,{value:function(...e){return r.value.call(this[t],...e)}});else{const n={};r.get&&(n.get=function(){var e;const n=this[t];return n&&(null==(e=r.get)?void 0:e.call(n))}),r.set&&(n.set=function(...e){var n;return null==(n=r.set)?void 0:n.call(this[t],...e)}),Object.defineProperty(e,i,n)}})})}},Symbol.toStringTag,{value:"Module"})),hi=e=>!e.circular&&0===e.index,ci=e=>!e.circular&&e.index===e.panelCount-1,ui=e=>e.panelCount,di=e=>e.index,gi=e=>{const t=e.camera,n=(t.position-t.range.min)/(t.range.max-t.range.min);return 100*Math.min(Math.max(n,0),1)},_i=({onInit:e,onDestroy:t,setMethods:n,getProps:i})=>{var r,s,o;let a;n(["moveTo"]);const l=i().options,h=We({isReachStart:!(null==l?void 0:l.defaultIndex)||0===(null==l?void 0:l.defaultIndex),isReachEnd:!(!(null==l?void 0:l.totalPanelCount)||!(null==l?void 0:l.defaultIndex))&&l.defaultIndex===l.totalPanelCount-1,totalPanelCount:null!=(r=null==l?void 0:l.totalPanelCount)?r:0,currentPanelIndex:null!=(s=null==l?void 0:l.defaultIndex)?s:0,progress:0,indexProgress:null!=(o=null==l?void 0:l.defaultIndex)?o:0,moveTo:e=>null==a?Promise.reject(new Error("Flicking instance is not available")):(null==a?void 0:a.animating)?Promise.resolve():a.moveTo(e)});const c=()=>{void 0!==a&&(h.isReachStart=hi(a),h.isReachEnd=ci(a),h.currentPanelIndex=di(a))},u=()=>{void 0!==a&&(c(),h.totalPanelCount=ui(a))},d=()=>{void 0!==a&&(h.progress=gi(a),h.indexProgress=(e=>{const t=e.camera,n=t.anchorPoints,i=n.length,r=t.position,s=e.circularEnabled;let o=0;const{min:a,max:l}=t.range,h=n[0],c=l-n[i-1].position+(h.position-a);return n.some((e,t)=>{const a=e.position,l=n[t+1];if(0===t&&r<=a)o=s?(r-a)/c:(r-a)/e.panel.size;else if(t===i-1&&r>=a)o=s?t+(r-a)/c:t+(r-a)/e.panel.size;else{if(!(l&&a<=r&&r<=l.position))return!1;o=t+(r-a)/(l.position-a)}return!0}),o})(a))};return e((e,t)=>{a=t.flicking,void 0!==a&&(h.isReachStart=hi(a),h.isReachEnd=ci(a),h.currentPanelIndex=di(a),h.progress=gi(a),h.totalPanelCount=ui(a),null==a||a.on("changed",c),null==a||a.on("panelChange",u),null==a||a.on("move",d))}),t(()=>{null==a||a.off("changed",c),null==a||a.off("panelChange",u),null==a||a.off("move",d)}),h},fi=Object.freeze(Object.defineProperty({__proto__:null,connectFlickingReactiveAPI:(e,t)=>{const n=function(e,t){var n=Ce(e)?{setup:e}:e;function i(){var e,i,r,s,o;return null!==(o=null!==(r=null!==(e=null==t?void 0:t())&&void 0!==e?e:null===(i=n.props)||void 0===i?void 0:i.call(n))&&void 0!==r?r:null===(s=n.data)||void 0===s?void 0:s.call(n))&&void 0!==o?o:{}}var r=new v,s=[],o=[],a=[],l=[],h={current:null},c=[],u=null,d=[],g=[],_=function(e){s.push(e)},f=function(e){u=e},p=function(e){d=e},m=function(e){g=e};return n.setup&&(h.current=n.setup({getProps:i,setInitialState:f,setEvents:p,setMethods:m,onMounted:_,onDestroy:function(e){a.push(e)},onInit:function(e){o.push(e)},emit:function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];r.trigger.apply(r,ze([e],t,!1))},on:function(e){l.push(e)}})||null),n.created&&(h.current=n.created(i())||null),n.events&&p(n.events),n.state&&f(n.state),n.methods&&m(n.methods),n.mounted&&_(n.mounted),n.destroy&&a.push(n.destroy),n.init&&o.push(n.init),n.on&&l.push(function(e,t,i){var r=n.on(e,t,i);return function(){var s;r&&r(),null===(s=n.off)||void 0===s||s.call(n,e,t,i)}}),{events:function(){return d},state:function(){var e=h.current;if(u)return u;if(e){var t=Ye(e);f(Se(t).reduce(function(e,n){return e[n]=t[n].current,e},{}))}return u||{}},instance:function(){return h.current},mounted:function(){var e=i();s.forEach(function(t){h.current=t(e,h.current)||h.current})},init:function(){var e=h.current,t=i();c=d.map(function(e){var t=function(){for(var t,n=[],i=0;i<arguments.length;i++)n[i]=arguments[i];(t=r).trigger.apply(t,ze([e],n,!1))},n=h.current;return l.map(function(i){return i(n,e,t)}).filter(Boolean)}),o.forEach(function(n){n(e,t)})},destroy:function(){c.forEach(function(e){e.forEach(function(e){e()})}),r.off();var e=h.current,t=i();a.forEach(function(n){n(e,t)})},methods:function(){return e=h,n={},(t=g)?(t.forEach(function(t){n[t]=function(){for(var n=[],i=0;i<arguments.length;i++)n[i]=arguments[i];var r=e.current||e.value;return r[t].apply(r,n)}}),n):n;var e,t,n},on:function(e,t){r.on(e,t)},off:function(e,t){r.off(e,t)}}}(_i,()=>({flicking:e,options:t}));n.mounted();const i=n.instance();return n.init(),i},flickingReactiveAPIAdapter:_i},Symbol.toStringTag,{value:"Module"})),pi=c(c({},w),R);return N(Jn,ni),N(Jn,fe),N(Jn,dn),N(Jn,Zn),N(Jn,pi),N(Jn,li),N(Jn,le),N(Jn,ti),N(Jn,fi),Jn});
|
|
1
|
+
!function(e,t){"object"==typeof exports&&"undefined"!=typeof module?module.exports=t():"function"==typeof define&&define.amd?define(t):(e="undefined"!=typeof globalThis?globalThis:e||self).Flicking=t()}(this,function(){"use strict";var e=Object.defineProperty,t=Object.defineProperties,n=Object.getOwnPropertyDescriptors,i=Object.getOwnPropertySymbols,r=Object.getPrototypeOf,s=Object.prototype.hasOwnProperty,o=Object.prototype.propertyIsEnumerable,a=Reflect.get,l=Math.pow,h=(t,n,i)=>n in t?e(t,n,{enumerable:!0,configurable:!0,writable:!0,value:i}):t[n]=i,c=(e,t)=>{for(var n in t||(t={}))s.call(t,n)&&h(e,n,t[n]);if(i)for(var n of i(t))o.call(t,n)&&h(e,n,t[n]);return e},u=(e,i)=>t(e,n(i)),d=(e,t,n)=>new Promise((i,r)=>{var s=e=>{try{a(n.next(e))}catch(t){r(t)}},o=e=>{try{a(n.throw(e))}catch(t){r(t)}},a=e=>e.done?i(e.value):Promise.resolve(e.value).then(s,o);a((n=n.apply(e,t)).next())});function g(e,t){var n="function"==typeof Symbol&&e[Symbol.iterator];if(!n)return e;var i,r,s=n.call(e),o=[];try{for(;(void 0===t||t-- >0)&&!(i=s.next()).done;)o.push(i.value)}catch(a){r={error:a}}finally{try{i&&!i.done&&(n=s.return)&&n.call(s)}finally{if(r)throw r.error}}return o}function _(){for(var e=[],t=0;t<arguments.length;t++)e=e.concat(g(arguments[t]));return e}var f=function(e){return void 0===e},p=function(){function e(e,t){var n,i;if(this._canceled=!1,t)try{for(var r=function(e){var t="function"==typeof Symbol&&Symbol.iterator,n=t&&e[t],i=0;if(n)return n.call(e);if(e&&"number"==typeof e.length)return{next:function(){return e&&i>=e.length&&(e=void 0),{value:e&&e[i++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}(Object.keys(t)),s=r.next();!s.done;s=r.next()){var o=s.value;this[o]=t[o]}}catch(a){n={error:a}}finally{try{s&&!s.done&&(i=r.return)&&i.call(r)}finally{if(n)throw n.error}}this.eventType=e}var t=e.prototype;return t.stop=function(){this._canceled=!0},t.isCanceled=function(){return this._canceled},e}(),v=function(){function e(){this._eventHandler={}}var t=e.prototype;return t.trigger=function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];var i=e instanceof p?e.eventType:e,r=_(this._eventHandler[i]||[]);return r.length<=0||(e instanceof p?(e.currentTarget=this,r.forEach(function(t){t(e)})):r.forEach(function(e){e.apply(void 0,_(t))})),this},t.once=function(e,t){var n=this;if("object"==typeof e&&f(t)){var i=e;for(var r in i)this.once(r,i[r]);return this}if("string"==typeof e&&"function"==typeof t){var s=function(){for(var i=[],r=0;r<arguments.length;r++)i[r]=arguments[r];t.apply(void 0,_(i)),n.off(e,s)};this.on(e,s)}return this},t.hasOn=function(e){return!!this._eventHandler[e]},t.on=function(e,t){if("object"==typeof e&&f(t)){var n=e;for(var i in n)this.on(i,n[i]);return this}if("string"==typeof e&&"function"==typeof t){var r=this._eventHandler[e];f(r)&&(this._eventHandler[e]=[],r=this._eventHandler[e]),r.push(t)}return this},t.off=function(e,t){if(f(e))return this._eventHandler={},this;if(f(t)){if("string"==typeof e)return delete this._eventHandler[e],this;var n=e;for(var i in n)this.off(i,n[i]);return this}var r=this._eventHandler[e];if(r)for(var s=r.length,o=0;o<s;++o)if(r[o]===t){r.splice(o,1),s<=1&&delete this._eventHandler[e];break}return this},e.VERSION="3.0.5",e}(),m=p;const E={PREV:"prev",CENTER:"center",NEXT:"next"},x={PREV:"PREV",NEXT:"NEXT",NONE:null},P={SNAP:"snap",FREE_SCROLL:"freeScroll",STRICT:"strict"},b={VIEWPORT:"flicking-viewport",CAMERA:"flicking-camera",VERTICAL:"vertical",HIDDEN:"flicking-hidden",DEFAULT_VIRTUAL:"flicking-panel"},y={LINEAR:"linear",BOUND:"bound"},O={LTR:"ltr",RTL:"rtl"},T={HORIZONTAL:"horizontal",VERTICAL:"vertical"},R=Object.freeze(Object.defineProperty({__proto__:null,ALIGN:E,CIRCULAR_FALLBACK:y,CLASS:b,DIRECTION:x,MOVE_DIRECTION:T,MOVE_TYPE:P,ORDER:O},Symbol.toStringTag,{value:"Module"})),I={READY:"ready",BEFORE_RESIZE:"beforeResize",AFTER_RESIZE:"afterResize",HOLD_START:"holdStart",HOLD_END:"holdEnd",MOVE_START:"moveStart",MOVE:"move",MOVE_END:"moveEnd",WILL_CHANGE:"willChange",CHANGED:"changed",WILL_RESTORE:"willRestore",RESTORED:"restored",SELECT:"select",NEED_PANEL:"needPanel",VISIBLE_CHANGE:"visibleChange",REACH_EDGE:"reachEdge",PANEL_CHANGE:"panelChange"},w=Object.freeze(Object.defineProperty({__proto__:null,EVENTS:I},Symbol.toStringTag,{value:"Module"}));class A{get index(){return this._index}get position(){return this._pos}get panel(){return this._panel}constructor(e){const{index:t,position:n,panel:i}=e;this._index=t,this._pos=n,this._panel=i}}const S={WRONG_TYPE:{code:0,message:(e,t)=>`${e}(${typeof e}) is not a ${t.map(e=>`"${e}"`).join(" or ")}.`},ELEMENT_NOT_FOUND:{code:1,message:e=>`Element with selector "${e}" not found.`},VAL_MUST_NOT_NULL:{code:2,message:(e,t)=>`${t} should be provided. Given: ${e}`},NOT_ATTACHED_TO_FLICKING:{code:3,message:'This module is not attached to the Flicking instance. "init()" should be called first.'},WRONG_OPTION:{code:4,message:(e,t)=>`Option "${e}" is not in correct format, given: ${t}`},INDEX_OUT_OF_RANGE:{code:5,message:(e,t,n)=>`Index "${e}" is out of range: should be between ${t} and ${n}.`},POSITION_NOT_REACHABLE:{code:6,message:e=>`Position "${e}" is not reachable.`},TRANSFORM_NOT_SUPPORTED:{code:7,message:"Browser does not support CSS transform."},STOP_CALLED_BY_USER:{code:8,message:"Event stop() is called by user."},ANIMATION_INTERRUPTED:{code:9,message:"Animation is interrupted by user input."},ANIMATION_ALREADY_PLAYING:{code:10,message:"Animation is already playing."},NOT_ALLOWED_IN_FRAMEWORK:{code:11,message:"This behavior is not allowed in the frameworks like React, Vue, or Angular."},NOT_INITIALIZED:{code:12,message:"Flicking is not initialized yet, call init() first."},NO_ACTIVE:{code:13,message:"There's no active panel that Flicking has selected. This may be due to the absence of any panels."},NOT_ALLOWED_IN_VIRTUAL:{code:14,message:"This behavior is not allowed when the virtual option is enabled"}},C=Object.keys(S).reduce((e,t)=>(e[t]=S[t].code,e),{}),k=Object.keys(S).reduce((e,t)=>(e[t]=S[t].message,e),{}),N=(e,...t)=>(t.forEach(t=>{Object.keys(t).forEach(n=>{e[n]=t[n]})}),e),D=(e,t)=>{let n=null;if($(e)){const i=(t||document).querySelector(e);if(!i)throw new he(k.ELEMENT_NOT_FOUND(e),C.ELEMENT_NOT_FOUND);n=i}else e&&e.nodeType===Node.ELEMENT_NODE&&(n=e);if(!n)throw new he(k.WRONG_TYPE(e,["HTMLElement","string"]),C.WRONG_TYPE);return n},M=(e,t)=>{if(null==e)throw new he(k.VAL_MUST_NOT_NULL(e,t),C.VAL_MUST_NOT_NULL)},z=(e,t,n)=>Math.max(Math.min(e,n),t),L=e=>{if(!e)throw new he(k.NOT_ATTACHED_TO_FLICKING,C.NOT_ATTACHED_TO_FLICKING);return e},H=e=>[].slice.call(e),F=(e,t)=>{let n;if($(e))switch(e){case E.PREV:n=0;break;case E.CENTER:n=.5*t;break;case E.NEXT:n=t;break;default:if(n=j(e,t),null==n)throw new he(k.WRONG_OPTION("align",e),C.WRONG_OPTION)}else n=e;return n},V=(e,t)=>{let n;if(Array.isArray(e))n=e.map(e=>j(e,t));else{const i=j(e,t);n=[i,i]}return n.map(t=>{if(null==t)throw new he(k.WRONG_OPTION("bounce",e),C.WRONG_OPTION);return t})},j=(e,t)=>{const n=B(e);return null==n?null:n.percentage*t+n.absolute},B=e=>{const t=/(?:(\+|-)\s*)?(\d+(?:\.\d+)?(%|px)?)/g;if("number"==typeof e)return{percentage:0,absolute:e};const n={percentage:0,absolute:0};let i=0,r=t.exec(e);for(;null!=r;){let s=r[1];const o=r[2],a=r[3],l=parseFloat(o);if(i<=0&&(s=s||"+"),!s)return null;const h="+"===s?1:-1;"%"===a?n.percentage+=h*(l/100):n.absolute+=h*l,++i,r=t.exec(e)}return 0===i?null:n},G=e=>"object"==typeof e?e.panel:e,W=(e,t)=>e===t?x.NONE:e<t?x.NEXT:x.PREV,X=e=>{Array.isArray(e)||(e=[e]);const t=[];return e.forEach(e=>{if($(e)){const n=document.createElement("div");for(n.innerHTML=e,t.push(...H(n.children));n.firstChild;)n.removeChild(n.firstChild)}else{if(!e||e.nodeType!==Node.ELEMENT_NODE)throw new he(k.WRONG_TYPE(e,["HTMLElement","string"]),C.WRONG_TYPE);t.push(e)}}),t},U=(e,t)=>z(e<0?e+t:e,0,t),Y=(e,t)=>{for(const n of e)if(n===t)return!0;return!1},$=e=>"string"==typeof e,K=(e,t,n)=>{const i=n-t;if(e<t){e=n-(t-e)%i}else if(e>n){e=t+(e-n)%i}return e},q=(e,t)=>{for(const n of e)if(t(n))return n;return null},Z=(e,t)=>{for(let n=0;n<e.length;n++)if(t(e[n]))return n;return-1},Q=(e,t,n)=>(e-t)/(n-t),J=e=>e?window.getComputedStyle(e)||e.currentStyle:{},ee=(e,{width:t,height:n})=>{e&&(null!=t&&($(t)?e.style.width=t:e.style.width=`${t}px`),null!=n&&($(n)?e.style.height=n:e.style.height=`${n}px`))},te=(e,t,n)=>e>=t&&e<=n,ne=(e,t)=>e>=t?e%t:e<0?U((e+1)%t-1,t):e,ie=e=>{const t=new Array(e);for(let n=0;n<e;n++)t[n]=n;return t},re=({el:e,horizontal:t,useFractionalSize:n,useOffset:i,style:r})=>{let s=0;if(n){const e=parseFloat(t?r.width:r.height)||0,n="border-box"===r.boxSizing,o=t?parseFloat(r.borderLeftWidth||"0")+parseFloat(r.borderRightWidth||"0"):parseFloat(r.borderTopWidth||"0")+parseFloat(r.borderBottomWidth||"0");if(n)s=i?e:e-o;else{const n=t?parseFloat(r.paddingLeft||"0")+parseFloat(r.paddingRight||"0"):parseFloat(r.paddingTop||"0")+parseFloat(r.paddingBottom||"0");s=i?e+n+o:e+n}}else{const n=t?"Width":"Height";s=i?e[`offset${n}`]:e[`client${n}`]}return Math.max(s,0)},se=Object.setPrototypeOf||((e,t)=>(e.__proto__=t,e)),oe=e=>e.replace(/[\s-_]([a-z])/g,(e,t)=>t.toUpperCase()),ae=(e,t)=>{const n={},i=e.attributes,r=i.length;for(let s=0;s<r;++s){const e=i[s],{name:r,value:o}=e;-1!==r.indexOf(t)&&(n[oe(r.replace(t,""))]=o)}return n},le=Object.freeze(Object.defineProperty({__proto__:null,camelize:oe,checkExistence:M,circulateIndex:ne,circulatePosition:K,clamp:z,find:q,findIndex:Z,findRight:(e,t)=>{for(let n=e.length-1;n>=0;n--){const i=e[n];if(t(i))return i}return null},getDataAttributes:ae,getDirection:W,getElement:D,getElementSize:re,getFlickingAttached:L,getMinusCompensatedIndex:U,getProgress:Q,getStyle:J,includes:Y,isBetween:te,isString:$,merge:N,parseAlign:F,parseArithmeticExpression:B,parseArithmeticSize:j,parseBounce:V,parseCSSSizeValue:e=>$(e)?e:`${e}px`,parseElement:X,parsePanelAlign:G,range:ie,setPrototypeOf:se,setSize:ee,toArray:H},Symbol.toStringTag,{value:"Module"}));class he extends Error{constructor(e,t){super(e),se(this,he.prototype),this.name="FlickingError",this.code=t}}class ce{constructor(e){this._flicking=e}getAnchors(){return this._flicking.renderer.panels.map((e,t)=>new A({index:t,position:e.position,panel:e}))}findAnchorIncludePosition(e){return this._flicking.camera.anchorPoints.filter(t=>t.panel.includePosition(e,!0)).reduce((t,n)=>t&&Math.abs(t.position-e)<Math.abs(n.position-e)?t:n,null)}findNearestAnchor(e){const t=this._flicking.camera.anchorPoints;if(t.length<=0)return null;let n=1/0;for(let i=0;i<t.length;i++){const r=t[i],s=Math.abs(r.position-e);if(s>n)return t[i-1];n=s}return t[t.length-1]}clampToReachablePosition(e){const t=this._flicking.camera.range;return z(e,t.min,t.max)}getCircularOffset(){return 0}canReach(e){const t=this._flicking.camera.range;if(e.removed)return!1;const n=e.position;return n>=t.min&&n<=t.max}canSee(e){const t=this._flicking.camera.visibleRange;return e.isVisibleOnRange(t.min,t.max)}}class ue extends ce{checkAvailability(){const e=this._flicking,t=e.renderer,n=t.getPanel(0),i=t.getPanel(t.panelCount-1);if(!n||!i)return!1;const r=e.camera.size,s=n.range.min;return r<i.range.max-s}getRange(){const e=this._flicking,t=e.renderer,n=e.camera.alignPosition,i=t.getPanel(0),r=t.getPanel(t.panelCount-1);if(!i||!r)return{min:0,max:0};const s=e.camera.size,o=i.range.min,a=r.range.max,l=o+n,h=a-s+n;if(s<a-o)return{min:l,max:h};{const t=e.camera.align,n="object"==typeof t?t.camera:t,i=l+F(n,h-l);return{min:i,max:i}}}getAnchors(){const e=this._flicking,t=e.camera,n=e.renderer.panels;if(n.length<=0)return[];const i=e.camera.range,r=n.filter(e=>t.canReach(e));if(r.length>0){const e=r[0].position!==i.min,t=r[r.length-1].position!==i.max,s=e?1:0,o=r.map((e,t)=>new A({index:t+s,position:e.position,panel:e}));return e&&o.splice(0,0,new A({index:0,position:i.min,panel:n[r[0].index-1]})),t&&o.push(new A({index:o.length,position:i.max,panel:n[r[r.length-1].index+1]})),o}if(i.min!==i.max){const e=this._findNearestPanel(i.min,n),t=e.index===n.length-1?e.prev():e,r=t.next();return[new A({index:0,position:i.min,panel:t}),new A({index:1,position:i.max,panel:r})]}return[new A({index:0,position:i.min,panel:this._findNearestPanel(i.min,n)})]}findAnchorIncludePosition(e){const t=this._flicking.camera,n=t.range,i=t.anchorPoints;return i.length<=0?null:e<=n.min?i[0]:e>=n.max?i[i.length-1]:super.findAnchorIncludePosition(e)}_findNearestPanel(e,t){let n=1/0;for(let i=0;i<t.length;i++){const r=t[i],s=Math.abs(r.position-e);if(s>n)return t[i-1];n=s}return t[t.length-1]}}class de extends ce{checkAvailability(){const e=this._flicking,t=e.renderer.panels;if(t.length<=0)return!1;const n=t[0],i=t[t.length-1],r=n.range.min-n.margin.prev,s=i.range.max+i.margin.next,o=e.camera.size,a=s-r;return t.every(e=>a-e.size>=o)}getRange(){const e=this._flicking.renderer.panels;if(e.length<=0)return{min:0,max:0};const t=e[0],n=e[e.length-1];return{min:t.range.min-t.margin.prev,max:n.range.max+n.margin.next}}getAnchors(){return this._flicking.renderer.panels.map((e,t)=>new A({index:t,position:e.position,panel:e}))}findNearestAnchor(e){const t=this._flicking.camera,n=t.anchorPoints;if(n.length<=0)return null;const i=t.range;let r=1/0,s=-1;for(let o=0;o<n.length;o++){const t=n[o],a=Math.min(Math.abs(t.position-e),Math.abs(t.position-i.min+i.max-e),Math.abs(e-i.min+i.max-t.position));a<r&&(r=a,s=o)}return n[s]}findAnchorIncludePosition(e){const t=this._flicking.camera,n=t.range,i=t.anchorPoints,r=t.rangeDiff,s=i.length,o=K(e,n.min,n.max);let a=super.findAnchorIncludePosition(o);if(s>0&&(e===n.min||e===n.max)){const t=[a,new A({index:0,position:i[0].position+r,panel:i[0].panel}),new A({index:s-1,position:i[s-1].position-r,panel:i[s-1].panel})].filter(e=>!!e);a=t.reduce((t,n)=>t&&Math.abs(t.position-e)<Math.abs(n.position-e)?t:n,null)}if(!a)return null;if(e<n.min){const t=-Math.floor((n.min-e)/r)-1;return new A({index:a.index,position:a.position+r*t,panel:a.panel})}if(e>n.max){const t=Math.floor((e-n.max)/r)+1;return new A({index:a.index,position:a.position+r*t,panel:a.panel})}return a}getCircularOffset(){const e=this._flicking;if(!e.camera.circularEnabled)return 0;const t=e.panels.filter(e=>e.toggled),n=t.filter(e=>e.toggleDirection===x.PREV),i=t.filter(e=>e.toggleDirection===x.NEXT);return this._calcPanelAreaSum(n)-this._calcPanelAreaSum(i)}clampToReachablePosition(e){return e}canReach(e){return!e.removed}canSee(e){const t=this._flicking.camera,n=t.range,i=t.rangeDiff,r=t.visibleRange,s=super.canSee(e);return r.min<n.min?s||e.isVisibleOnRange(r.min+i,r.max+i):r.max>n.max?s||e.isVisibleOnRange(r.min-i,r.max-i):s}_calcPanelAreaSum(e){return e.reduce((e,t)=>e+t.sizeIncludingMargin,0)}}class ge extends ce{checkAvailability(){return!0}getRange(){var e,t;const n=this._flicking.renderer,i=n.getPanel(0),r=n.getPanel(n.panelCount-1);return{min:null!=(e=null==i?void 0:i.position)?e:0,max:null!=(t=null==r?void 0:r.position)?t:0}}}let _e=class{constructor(e,{align:t=E.CENTER}={}){this._lookedOffset=0,this._checkTranslateSupport=()=>{const e=["webkitTransform","msTransform","MozTransform","OTransform","transform"],t=document.documentElement.style;let n="";for(const i of e)i in t&&(n=i);if(!n)throw new he(k.TRANSFORM_NOT_SUPPORTED,C.TRANSFORM_NOT_SUPPORTED);this._transform=n},this._flicking=e,this._resetInternalValues(),this._align=t}get element(){return this._el}get children(){return H(this._el.children)}get position(){return this._position}get alignPosition(){return this._alignPos}get offset(){return this._offset-this._circularOffset}get circularEnabled(){return this._circularEnabled}get mode(){return this._mode}get range(){return this._range}get rangeDiff(){return this._range.max-this._range.min}get visiblePanels(){return this._visiblePanels}get visibleRange(){return{min:this._position-this._alignPos,max:this._position-this._alignPos+this.size}}get anchorPoints(){return this._anchors}get controlParams(){return{range:this._range,position:this._position,circular:this._circularEnabled}}get atEdge(){return this._position<=this._range.min||this._position>=this._range.max}get size(){const e=this._flicking;return e?e.horizontal?e.viewport.width:e.viewport.height:0}get progress(){const e=this._flicking,t=this._position+this._offset,n=this.findNearestAnchor(this._position);if(!e||!n)return NaN;const i=n.panel,r=i.position+i.offset,s=e.control.controller.bounce,{min:o,max:a}=this.range,l=this.rangeDiff;if(t===r)return i.index;if(t<r){const e=i.prev();let n=e?e.position+e.offset:o-s[0];return n>r&&(n-=l),i.index-1+Q(t,n,r)}{const e=i.next();let n=e?e.position+e.offset:a+s[1];return n<r&&(n+=l),i.index+Q(t,r,n)}}get panelOrder(){return this._panelOrder}get align(){return this._align}set align(e){this._align=e}init(){const e=this._flicking.viewport.element;return M(e.firstElementChild,"First element child of the viewport element"),this._el=e.firstElementChild,this._checkTranslateSupport(),this._updateMode(),this.updatePanelOrder(),this}destroy(){return this._resetInternalValues(),this}lookAt(e){const t=this._offset,n=this._lookedOffset!==t,i=L(this._flicking),r=this._position;this._position=e;const s=this._togglePanels(r,e);this._refreshVisiblePanels(),this._checkNeedPanel(),this._checkReachEnd(r,e),s?i.renderer.render().then(()=>{this.updateOffset(),this._lookedOffset=this._offset}):n?(this.updateOffset(),this._lookedOffset=this._offset):this.applyTransform()}getPrevAnchor(e){if(this._circularEnabled&&0===e.index){const e=this._anchors,t=this.rangeDiff,n=e[e.length-1];return new A({index:n.index,position:n.position-t,panel:n.panel})}return this._anchors[e.index-1]||null}getNextAnchor(e){const t=this._anchors;if(this._circularEnabled&&e.index===t.length-1){const e=this.rangeDiff,n=t[0];return new A({index:n.index,position:n.position+e,panel:n.panel})}return t[e.index+1]||null}getProgressInPanel(e){const t=e.range;return(this._position-t.min)/(t.max-t.min)}findAnchorIncludePosition(e){return this._mode.findAnchorIncludePosition(e)}findNearestAnchor(e){return this._mode.findNearestAnchor(e)}findActiveAnchor(){var e;const t=L(this._flicking).control.activePanel;return t?null!=(e=q(this._anchors,e=>e.panel.index===t.index))?e:this.findNearestAnchor(t.position):null}clampToReachablePosition(e){return this._mode.clampToReachablePosition(e)}canReach(e){return this._mode.canReach(e)}canSee(e){return this._mode.canSee(e)}updateRange(){const e=L(this._flicking).renderer.panels;return this._updateMode(),this._range=this._mode.getRange(),e.forEach(e=>e.updateCircularToggleDirection()),this}updateAlignPos(){const e=this._align,t="object"==typeof e?e.camera:e;return this._alignPos=F(t,this.size),this}updateAnchors(){return this._anchors=this._mode.getAnchors(),this}updateAdaptiveHeight(){const e=L(this._flicking),t=e.control.activePanel,n=[...e.visiblePanels];if(t&&n.push(t),!e.horizontal||!e.adaptive||!n.length)return;const i=Math.max(...n.map(e=>e.height));e.viewport.setSize({height:i})}updateOffset(){const e=L(this._flicking),t=this._position,n=e.panels.filter(e=>!e.rendered);return this._offset=n.filter(e=>e.position+e.offset<t).reduce((e,t)=>e+t.sizeIncludingMargin,0),this._circularOffset=this._mode.getCircularOffset(),this.applyTransform(),this}updatePanelOrder(){const e=L(this._flicking);if(!e.horizontal)return this;const t=this._el,n=J(t).direction;return n!==this._panelOrder&&(this._panelOrder=n===O.RTL?O.RTL:O.LTR,e.initialized&&e.control.controller.updateDirection()),this}resetNeedPanelHistory(){return this._needPanelTriggered={prev:!1,next:!1},this}applyTransform(){const e=this._el,t=L(this._flicking);if(t.renderer.rendering||!t.initialized)return this;const n=this._position-this._alignPos-this._offset+this._circularOffset;return e.style[this._transform]=t.horizontal?`translate(${this._panelOrder===O.RTL?n:-n}px)`:`translate(0, ${-n}px)`,this}_resetInternalValues(){this._position=0,this._lookedOffset=0,this._alignPos=0,this._offset=0,this._circularOffset=0,this._circularEnabled=!1,this._range={min:0,max:0},this._visiblePanels=[],this._anchors=[],this._needPanelTriggered={prev:!1,next:!1}}_refreshVisiblePanels(){const e=L(this._flicking),t=e.renderer.panels.filter(e=>this.canSee(e)),n=this._visiblePanels;this._visiblePanels=t;const i=t.filter(e=>!Y(n,e)),r=n.filter(e=>!Y(t,e));(i.length>0||r.length>0)&&e.renderer.render().then(()=>{e.trigger(new m(I.VISIBLE_CHANGE,{added:i,removed:r,visiblePanels:t}))})}_checkNeedPanel(){const e=this._needPanelTriggered;if(e.prev&&e.next)return;const t=L(this._flicking),n=t.renderer.panels;if(n.length<=0)return e.prev||(t.trigger(new m(I.NEED_PANEL,{direction:x.PREV})),e.prev=!0),void(e.next||(t.trigger(new m(I.NEED_PANEL,{direction:x.NEXT})),e.next=!0));const i=this._position,r=this.size,s=this._range,o=t.needPanelThreshold,a=i-this._alignPos,l=a+r,h=n[0],c=n[n.length-1];if(!e.prev){(a<=h.range.min+o||i<=s.min+o)&&(t.trigger(new m(I.NEED_PANEL,{direction:x.PREV})),e.prev=!0)}if(!e.next){(l>=c.range.max-o||i>=s.max-o)&&(t.trigger(new m(I.NEED_PANEL,{direction:x.NEXT})),e.next=!0)}}_checkReachEnd(e,t){const n=L(this._flicking),i=this._range,r=e>i.min&&e<i.max,s=t>i.min&&t<i.max;if(!r||s)return;const o=t<=i.min?x.PREV:x.NEXT;n.trigger(new m(I.REACH_EDGE,{direction:o}))}_updateMode(){const e=L(this._flicking);if(e.circular){const t=new de(e),n=t.checkAvailability();if(n)this._mode=t;else{const t=e.circularFallback;this._mode=t===y.BOUND?new ue(e):new ge(e)}this._circularEnabled=n}else this._mode=e.bound?new ue(e):new ge(e),this._circularEnabled=!1}_togglePanels(e,t){if(t===e)return!1;return L(this._flicking).renderer.panels.map(n=>n.toggle(e,t)).some(e=>e)}};const fe=Object.freeze(Object.defineProperty({__proto__:null,BoundCameraMode:ue,Camera:_e,CircularCameraMode:de,LinearCameraMode:ge},Symbol.toStringTag,{value:"Module"}));function pe(e,t){for(var n=e.length,i=0;i<n;++i)if(t(e[i],i))return!0;return!1}function ve(e,t){for(var n=e.length,i=0;i<n;++i)if(t(e[i],i))return e[i];return null}function me(e){var t=e;if(void 0===t){if("undefined"==typeof navigator||!navigator)return"";t=navigator.userAgent||""}return t.toLowerCase()}function Ee(e,t){try{return new RegExp(e,"g").exec(t)}catch(n){return null}}function xe(e){return e.replace(/_/g,".")}function Pe(e,t){var n=null,i="-1";return pe(e,function(e){var r=Ee("("+e.test+")((?:\\/|\\s|:)([0-9|\\.|_]+))?",t);return!(!r||e.brand)&&(n=e,i=r[3]||"-1",e.versionAlias?i=e.versionAlias:e.versionTest&&(i=function(e,t){var n=Ee("("+e+")((?:\\/|\\s|:)([0-9|\\.|_]+))",t);return n?n[3]:""}(e.versionTest.toLowerCase(),t)||i),i=xe(i),!0)}),{preset:n,version:i}}function be(e,t){var n={brand:"",version:"-1"};return pe(e,function(e){var i=ye(t,e);return!!i&&(n.brand=e.id,n.version=e.versionAlias||i.version,"-1"!==n.version)}),n}function ye(e,t){return ve(e,function(e){var n=e.brand;return Ee(""+t.test,n.toLowerCase())})}var Oe=[{test:"phantomjs",id:"phantomjs"},{test:"whale",id:"whale"},{test:"edgios|edge|edg",id:"edge"},{test:"msie|trident|windows phone",id:"ie",versionTest:"iemobile|msie|rv"},{test:"miuibrowser",id:"miui browser"},{test:"samsungbrowser",id:"samsung internet"},{test:"samsung",id:"samsung internet",versionTest:"version"},{test:"chrome|crios",id:"chrome"},{test:"firefox|fxios",id:"firefox"},{test:"android",id:"android browser",versionTest:"version"},{test:"safari|iphone|ipad|ipod",id:"safari",versionTest:"version"}],Te=[{test:"(?=.*applewebkit/(53[0-7]|5[0-2]|[0-4]))(?=.*\\schrome)",id:"chrome",versionTest:"chrome"},{test:"chromium",id:"chrome"},{test:"whale",id:"chrome",versionAlias:"-1",brand:!0}],Re=[{test:"applewebkit",id:"webkit",versionTest:"applewebkit|safari"}],Ie=[{test:"(?=(iphone|ipad))(?!(.*version))",id:"webview"},{test:"(?=(android|iphone|ipad))(?=.*(naver|daum|; wv))",id:"webview"},{test:"webview",id:"webview"}],we=[{test:"windows phone",id:"windows phone"},{test:"windows 2000",id:"window",versionAlias:"5.0"},{test:"windows nt",id:"window"},{test:"win32|windows",id:"window"},{test:"iphone|ipad|ipod",id:"ios",versionTest:"iphone os|cpu os"},{test:"macos|macintel|mac os x",id:"mac"},{test:"android|linux armv81",id:"android"},{test:"tizen",id:"tizen"},{test:"webos|web0s",id:"webos"}];function Ae(e){return!!Pe(Ie,e).preset}function Se(e){return Object.keys(e)}function Ce(e){return"function"==typeof e}var ke="__observers__",Ne="__computed__",De="__CFCS_DETECTED_DEPENDENCIES__",Me=function(e,t){return(Me=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)};function ze(e,t,n){if(2===arguments.length)for(var i,r=0,s=t.length;r<s;r++)!i&&r in t||(i||(i=Array.prototype.slice.call(t,0,r)),i[r]=t[r]);return e.concat(i||Array.prototype.slice.call(t))}function Le(){Object[De]=Object[De]||{};var e=Object[De];return e[1]=e[1]||[],e[1]}var He=function(){function e(e){this._emitter=new v,this._current=e}var t=e.prototype;return Object.defineProperty(t,"current",{get:function(){var e,t=(e=Le())[e.length-1];return null==t||t.push(this),this._current},set:function(e){this._setCurrent(e)},enumerable:!1,configurable:!0}),t.subscribe=function(e){return this.current,this._emitter.on("update",e),this},t.unsubscribe=function(e){return this._emitter.off("update",e),this},t._setCurrent=function(e){var t=this._current,n=e!==t;this._current=e,n&&this._emitter.trigger("update",e,t)},t.toString=function(){return"".concat(this.current)},t.valueOf=function(){return this.current},e}(),Fe=function(e){function t(t){var n=e.call(this)||this;return n._computedCallback=t,n._registered=[],n._onCheckUpdate=function(){n._setCurrent(n.current)},n._current=n.current,n}!function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}Me(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}(t,e);var n=t.prototype;return Object.defineProperty(n,"current",{get:function(){var e,t,n,i,r=this;e=this,t=Le(),i={host:e,observers:n=[],push:function(t){e!==t&&-1===n.indexOf(t)&&n.push(t)}},t.push(i);var s=this._computedCallback(),o=Le().pop();return this._registered.forEach(function(e){e.unsubscribe(r._onCheckUpdate)}),o.observers.forEach(function(e){e.subscribe(r._onCheckUpdate)}),this._registered=o.observers,s},enumerable:!1,configurable:!0}),t}(He);function Ve(e,t,n){void 0===n&&(n=t);var i={configurable:!0,get:function(){return $e(this,n).current},set:function(e){$e(this,n,e).current=e}};Object.defineProperty(e,t,i),n!==t&&Object.defineProperty(e,n,{configurable:!0,get:function(){return $e(this,n).current}})}function je(){for(var e=[],t=0;t<arguments.length;t++)e[t]=arguments[t];return e.length>1?Ve(e[0],e[1]):function(t,n){return Ve(t,n,e[0])}}function Be(e){e.subscribe=function(e,t){this[e],$e(this,e).subscribe(t)},e.unsubscribe=function(e,t){var n=this;e?e in this&&$e(this,e).unsubscribe(t):Se(Ye(this)).forEach(function(e){n.unsubscribe(e)})}}function Ge(e){Be(e.prototype)}function We(e,t){var n=Ce(e)?e():e,i={};return Ue(i),Se(n).forEach(function(e){var t,r=n[e];(t=r)&&function(e){return"object"==typeof e}(t)&&"current"in t&&"subscribe"in t&&"unsubscribe"in t?Ke(i,e,r):Ke(i,e,Xe(r)),je(e)(i,e)}),Be(i),i}function Xe(e){return new He(e)}function Ue(e){var t={};return Object.defineProperty(e,ke,{get:function(){return t}}),t}function Ye(e,t){var n,i;e[ke]||Ue(e);var r=e[ke];if(!t){var s=null===(i=null===(n=null==e?void 0:e.constructor)||void 0===n?void 0:n.prototype)||void 0===i?void 0:i[Ne];s&&s.forEach(function(t){!(t in r)&&t in e&&e[t]})}return r}function $e(e,t,n){var i=Ye(e);return i[t]||(i[t]=Xe(n)),i[t]}function Ke(e,t,n){Ye(e)[t]=n}function qe(e,t,n){var i=n.get;var r={configurable:!0,get:function(){var e,n=Ye(this,!0);return t in n||(n[t]=(e=i.bind(this),new Fe(e))),$e(this,t).current}};e[Ne]||(e[Ne]=[]);var s=e[Ne];return-1===s.indexOf(t)&&s.push(t),Object.defineProperty(e,t,r),r}var Ze=function(e,t){return(Ze=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)};function Qe(e,t){function n(){this.constructor=e}Ze(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var Je,et=function(){return et=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},et.apply(this,arguments)};function tt(e,t,n,i){var r,s=arguments.length,o=s<3?t:null===i?i=Object.getOwnPropertyDescriptor(t,n):i;if("object"==typeof Reflect&&"function"==typeof Reflect.decorate)o=Reflect.decorate(e,t,n,i);else for(var a=e.length-1;a>=0;a--)(r=e[a])&&(o=(s<3?r(o):s>3?r(t,n,o):r(t,n))||o);return s>3&&o&&Object.defineProperty(t,n,o),o}Je="undefined"==typeof window?{navigator:{userAgent:""}}:window;var nt,it=24,rt="left",st="right",ot="middle",at={1:rt,2:ot,3:st},lt="ontouchstart"in Je&&"safari"===(function(){if("undefined"==typeof navigator||!navigator||!navigator.userAgentData)return!1;var e=navigator.userAgentData,t=e.brands||e.uaList;return!(!t||!t.length)}()?function(e){var t=navigator.userAgentData,n=(t.uaList||t.brands).slice(),i=t.mobile||!1,r=n[0],s=(t.platform||navigator.platform).toLowerCase(),o={name:r.brand,version:r.version,majorVersion:-1,webkit:!1,webkitVersion:"-1",chromium:!1,chromiumVersion:"-1",webview:!!be(Ie,n).brand||Ae(me())},a={name:"unknown",version:"-1",majorVersion:-1};o.webkit=!o.chromium&&pe(Re,function(e){return ye(n,e)});var l=be(Te,n);if(o.chromium=!!l.brand,o.chromiumVersion=l.version||"-1",!o.chromium){var h=be(Re,n);o.webkit=!!h.brand,o.webkitVersion=h.version||"-1"}var c=ve(we,function(e){return new RegExp(""+e.test,"g").exec(s)});a.name=c?c.id:"";var u=be(Oe,n);return o.name=u.brand||o.name,o.version=u.brand&&e?e.uaFullVersion:u.version,o.webkit&&(a.name=i?"ios":"mac"),"ios"===a.name&&o.webview&&(o.version="-1"),a.version=xe(a.version),o.version=xe(o.version),a.majorVersion=parseInt(a.version,10),o.majorVersion=parseInt(o.version,10),{browser:o,os:a,isMobile:i,isHints:!0}}():function(e){var t=me(e),n=!!/mobi/g.exec(t),i={name:"unknown",version:"-1",majorVersion:-1,webview:Ae(t),chromium:!1,chromiumVersion:"-1",webkit:!1,webkitVersion:"-1"},r={name:"unknown",version:"-1",majorVersion:-1},s=Pe(Oe,t),o=s.preset,a=s.version,l=Pe(we,t),h=l.preset,c=l.version,u=Pe(Te,t);if(i.chromium=!!u.preset,i.chromiumVersion=u.version,!i.chromium){var d=Pe(Re,t);i.webkit=!!d.preset,i.webkitVersion=d.version}return h&&(r.name=h.id,r.version=c,r.majorVersion=parseInt(c,10)),o&&(i.name=o.id,i.version=a,i.webview&&"ios"===r.name&&"safari"!==i.name&&(i.webview=!1)),i.majorVersion=parseInt(i.version,10),{browser:i,os:r,isMobile:n,isHints:!1}}(nt)).browser.name,ht=function(){if("undefined"==typeof document)return"";for(var e=(document.head||document.getElementsByTagName("head")[0]).style,t=["transform","webkitTransform","msTransform","mozTransform"],n=0,i=t.length;n<i;n++)if(t[n]in e)return t[n];return""}(),ct={"-webkit-user-select":"none","-ms-user-select":"none","-moz-user-select":"none","user-select":"none","-webkit-user-drag":"none"},ut=function(e){for(var t=[],n=0,i=e.length;n<i;n++)t.push(e[n]);return t},dt=function(e,t){var n;if(void 0===t&&(t=!1),"string"==typeof e){if(e.match(/^<([a-z]+)\s*([^>]*)>/)){var i=document.createElement("div");i.innerHTML=e,n=ut(i.childNodes)}else n=ut(document.querySelectorAll(e));t||(n=n.length>=1?n[0]:void 0)}else e===Je?n=e:"value"in e||"current"in e?n=e.value||e.current:!e.nodeName||1!==e.nodeType&&9!==e.nodeType?"jQuery"in Je&&e instanceof jQuery||e.constructor.prototype.jquery?n=t?e.toArray():e.get(0):Array.isArray(e)&&(n=e.map(function(e){return dt(e)}),t||(n=n.length>=1?n[0]:void 0)):n=e;return n},gt=Je.requestAnimationFrame||Je.webkitRequestAnimationFrame,_t=Je.cancelAnimationFrame||Je.webkitCancelAnimationFrame;if(gt&&!_t){var ft={},pt=gt;gt=function(e){var t=pt(function(n){ft[t]&&e(n)});return ft[t]=!0,t},_t=function(e){delete ft[e]}}else gt&&_t||(gt=function(e){return Je.setTimeout(function(){e(Je.performance&&Je.performance.now&&Je.performance.now()||(new Date).getTime())},16)},_t=Je.clearTimeout);var vt=function(e,t){var n={};for(var i in e)i&&(n[i]=t(e[i],i));return n},mt=function(e,t){var n={};for(var i in e)i&&t(e[i],i)&&(n[i]=e[i]);return n},Et=function(e,t){for(var n in e)if(n&&!t(e[n],n))return!1;return!0},xt=function(e,t){return Et(e,function(e,n){return e===t[n]})},Pt={},bt=function(e,t){return Pt[t]||(Pt[t]=Tt(t)),Pt[t](e)},yt=function(e,t){return e&&t?vt(e,function(e,n){return bt(e,"number"==typeof t?t:t[n])}):e},Ot=function(e){if(!isFinite(e))return 0;var t="".concat(e);if(t.indexOf("e")>=0){for(var n=0,i=1;Math.round(e*i)/i!==e;)i*=10,n++;return n}return t.indexOf(".")>=0?t.length-t.indexOf(".")-1:0},Tt=function(e){var t=e<1?Math.pow(10,Ot(e)):1;return function(n){return 0===e?0:Math.round(Math.round(n/e)*e*t)/t}},Rt=function(e,t,n){return n?!!(30===t||t&e&&n&e):!!(t&e)},It=function(){function e(e){this._axes=e,this.holdingCount=0}var t=e.prototype;return t.hold=function(e,t){var n=this._getRoundPos(e).roundPos;this._axes.trigger(new m("hold",{pos:n,input:t.input||null,inputEvent:t.event||null,isTrusted:!0}))},t.triggerRelease=function(e){var t=this._getRoundPos(e.destPos,e.depaPos),n=t.roundPos,i=t.roundDepa;e.destPos=n,e.depaPos=i,e.setTo=this._createUserControll(e.destPos,e.duration),this._axes.trigger(new m("release",et(et({},e),{bounceRatio:this._getBounceRatio(n)})))},t.triggerChange=function(e,t,n,i){var r=this;void 0===i&&(i=!1);var s=this.animationManager,o=s.axisManager,a=s.getEventInfo(),l=this._getRoundPos(e,t),h=l.roundPos,c=l.roundDepa,u=o.moveTo(h,c),d=(null==n?void 0:n.event)||(null==a?void 0:a.event)||null,g={pos:u.pos,delta:u.delta,bounceRatio:this._getBounceRatio(u.pos),holding:i,inputEvent:d,isTrusted:!!d,input:(null==n?void 0:n.input)||(null==a?void 0:a.input)||null,set:d?this._createUserControll(u.pos):function(){}},_=new m("change",g);return this._axes.trigger(_),Object.keys(u.pos).forEach(function(e){var t=u.pos[e];$e(r._axes,e,t).current=t}),d&&o.set(g.set().destPos),!_.isCanceled()},t.triggerAnimationStart=function(e){var t=this._getRoundPos(e.destPos,e.depaPos),n=t.roundPos,i=t.roundDepa;e.destPos=n,e.depaPos=i,e.setTo=this._createUserControll(e.destPos,e.duration);var r=new m("animationStart",e);return this._axes.trigger(r),!r.isCanceled()},t.triggerAnimationEnd=function(e){void 0===e&&(e=!1),this._axes.trigger(new m("animationEnd",{isTrusted:e}))},t.triggerFinish=function(e){void 0===e&&(e=!1),this._axes.trigger(new m("finish",{isTrusted:e}))},t.setAnimationManager=function(e){this.animationManager=e},t.destroy=function(){this._axes.off()},t._createUserControll=function(e,t){void 0===t&&(t=0);var n={destPos:et({},e),duration:t};return function(e,t){return e&&(n.destPos=et({},e)),void 0!==t&&(n.duration=t),n}},t._getRoundPos=function(e,t){var n=this._axes.options.round;return{roundPos:yt(e,n),roundDepa:yt(t,n)}},t._getBounceRatio=function(e){return this._axes.axisManager.map(e,function(e,t){return e<t.range[0]&&0!==t.bounce[0]?(t.range[0]-e)/t.bounce[0]:e>t.range[1]&&0!==t.bounce[1]?(e-t.range[1])/t.bounce[1]:0})},tt([je],e.prototype,"holdingCount",void 0),e}(),wt=function(){function e(e){this._options=e,this._prevented=!1}var t=e.prototype;return t.isInterrupting=function(){return this._options.interruptable||this._prevented},t.isInterrupted=function(){return!this._options.interruptable&&this._prevented},t.setInterrupt=function(e){this._options.interruptable||(this._prevented=e)},e}(),At=function(e,t,n,i){var r=e,s=[n[0]?t[0]:i?t[0]-i[0]:t[0],n[1]?t[1]:i?t[1]+i[1]:t[1]];return r=Math.max(s[0],r),r=Math.min(s[1],r)},St=function(e,t){return e<t[0]||e>t[1]},Ct=function(e,t,n){return n[1]&&e>t[1]||n[0]&&e<t[0]},kt=function(e,t,n){var i=e,r=t[0],s=t[1],o=s-r;return n[1]&&e>s&&(i=(i-s)%o+r),n[0]&&e<r&&(i=(i-r)%o+s),i},Nt=function(){function e(e){var t=this;this._axis=e,this._complementOptions(),this._pos=Object.keys(this._axis).reduce(function(e,n){return e[n]=t._axis[n].startPos,e},{})}var t=e.prototype;return t.getDelta=function(e,t){var n=this.get(e);return vt(this.get(t),function(e,t){return e-n[t]})},t.get=function(e){var t=this;return e&&Array.isArray(e)?e.reduce(function(e,n){return n&&n in t._pos&&(e[n]=t._pos[n]),e},{}):et(et({},this._pos),e||{})},t.moveTo=function(e,t){void 0===t&&(t=this._pos);var n=vt(this._pos,function(n,i){return i in e&&i in t?e[i]-t[i]:0});return this.set(this.map(e,function(e,t){return t?kt(e,t.range,t.circular):0})),{pos:et({},this._pos),delta:n}},t.set=function(e){for(var t in e)t&&t in this._pos&&(this._pos[t]=e[t])},t.every=function(e,t){var n=this._axis;return Et(e,function(e,i){return t(e,n[i],i)})},t.filter=function(e,t){var n=this._axis;return mt(e,function(e,i){return t(e,n[i],i)})},t.map=function(e,t){var n=this._axis;return vt(e,function(e,i){return t(e,n[i],i)})},t.isOutside=function(e){return!this.every(e?this.get(e):this._pos,function(e,t){return!St(e,t.range)})},t.getAxisOptions=function(e){return this._axis[e]},t.setAxis=function(e){var t=this;Object.keys(e).forEach(function(n){if(!t._axis[n])throw new Error("Axis ".concat(n," does not exist in Axes instance"));t._axis[n]=et(et({},t._axis[n]),e[n])}),this._complementOptions()},t._complementOptions=function(){var e=this;Object.keys(this._axis).forEach(function(t){e._axis[t]=et({range:[0,100],startPos:e._axis[t].range[0],bounce:[0,0],circular:[!1,!1]},e._axis[t]),["bounce","circular"].forEach(function(n){var i=e._axis,r=i[t][n];/string|number|boolean/.test(typeof r)&&(i[t][n]=[r,r])})})},e}(),Dt="ontouchstart"in Je,Mt="PointerEvent"in Je,zt=Mt||"MSPointerEvent"in Je,Lt=function(){function e(){var e=this;this._stopContextMenu=function(t){t.preventDefault(),Je.removeEventListener("contextmenu",e._stopContextMenu)}}var t=e.prototype;return t.extendEvent=function(e){var t,n,i,r=this.prevEvent,s=this._getCenter(e),o=r?this._getMovement(e):{x:0,y:0},a=r?this._getScale(e):1,l=r?(n=s.x-r.center.x,i=s.y-r.center.y,180*Math.atan2(i,n)/Math.PI):0,h=r?r.deltaX+o.x:o.x,c=r?r.deltaY+o.y:o.y,u=o.x,d=o.y,g=this._latestInterval,_=Date.now(),f=g?_-g.timestamp:0,p=r?r.velocityX:0,v=r?r.velocityY:0,m=r?r.directionX:1,E=r?r.directionY:1;return u>0?m=1:u<0&&(m=-1),d>0?E=1:d<0&&(E=-1),(!g||f>=16)&&(g&&(p=(t=[(h-g.deltaX)/f,(c-g.deltaY)/f])[0],v=t[1]),this._latestInterval={timestamp:_,deltaX:h,deltaY:c}),{srcEvent:e,scale:a,angle:l,center:s,deltaX:h,deltaY:c,offsetX:u,offsetY:d,directionX:m,directionY:E,velocityX:p,velocityY:v,preventSystemEvent:!0}},t._getDistance=function(e,t){var n=t.clientX-e.clientX,i=t.clientY-e.clientY;return Math.sqrt(n*n+i*i)},t._getButton=function(e){var t={1:rt,2:st,4:ot},n=this._isTouchEvent(e)?rt:t[e.buttons];return n||null},t._isTouchEvent=function(e){return e.type&&e.type.indexOf("touch")>-1},t._isValidButton=function(e,t){return t.indexOf(e)>-1},t._isValidEvent=function(e,t,n){return(!t||function(e,t){return!!(!t||t.indexOf("any")>-1||t.indexOf("none")>-1&&!e.shiftKey&&!e.ctrlKey&&!e.altKey&&!e.metaKey||t.indexOf("shift")>-1&&e.shiftKey||t.indexOf("ctrl")>-1&&e.ctrlKey||t.indexOf("alt")>-1&&e.altKey||t.indexOf("meta")>-1&&e.metaKey)}(e,t))&&(!n||this._isValidButton(this._getButton(e),n))},t._preventMouseButton=function(e,t){t===st?Je.addEventListener("contextmenu",this._stopContextMenu):t===ot&&e.preventDefault()},e}(),Ht=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.start=["mousedown"],t.move=["mousemove"],t.end=["mouseup"],t}Qe(t,e);var n=t.prototype;return n.onEventStart=function(e,t,n){var i=this._getButton(e);return this._isValidEvent(e,t,n)?(this._preventMouseButton(e,i),this.extendEvent(e)):null},n.onEventMove=function(e,t,n){return this._isValidEvent(e,t,n)?this.extendEvent(e):null},n.onEventEnd=function(){},n.onRelease=function(){this.prevEvent=null},n.getTouches=function(e,t){return t&&this._isValidButton(at[e.which],t)&&-1===this.end.indexOf(e.type)?1:0},n._getScale=function(){return 1},n._getCenter=function(e){return{x:e.clientX,y:e.clientY}},n._getMovement=function(e){var t=this.prevEvent.srcEvent;return{x:e.clientX-t.clientX,y:e.clientY-t.clientY}},t}(Lt),Ft=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.start=["touchstart"],t.move=["touchmove"],t.end=["touchend","touchcancel"],t}Qe(t,e);var n=t.prototype;return n.onEventStart=function(e,t){return this._baseTouches=e.touches,this._isValidEvent(e,t)?this.extendEvent(e):null},n.onEventMove=function(e,t){return this._isValidEvent(e,t)?this.extendEvent(e):null},n.onEventEnd=function(e){this._baseTouches=e.touches},n.onRelease=function(){this.prevEvent=null,this._baseTouches=null},n.getTouches=function(e){return e.touches.length},n._getScale=function(e){return 2!==e.touches.length||this._baseTouches.length<2?null:this._getDistance(e.touches[0],e.touches[1])/this._getDistance(this._baseTouches[0],this._baseTouches[1])},n._getCenter=function(e){return{x:e.touches[0].clientX,y:e.touches[0].clientY}},n._getMovement=function(e){var t=this.prevEvent.srcEvent;return e.touches[0].identifier!==t.touches[0].identifier?{x:0,y:0}:{x:e.touches[0].clientX-t.touches[0].clientX,y:e.touches[0].clientY-t.touches[0].clientY}},t}(Lt),Vt=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.start=Mt?["pointerdown"]:["MSPointerDown"],t.move=Mt?["pointermove"]:["MSPointerMove"],t.end=Mt?["pointerup","pointercancel"]:["MSPointerUp","MSPointerCancel"],t._firstInputs=[],t._recentInputs=[],t}Qe(t,e);var n=t.prototype;return n.onEventStart=function(e,t,n){var i=this._getButton(e);return this._isValidEvent(e,t,n)?(this._preventMouseButton(e,i),this._updatePointerEvent(e),this.extendEvent(e)):null},n.onEventMove=function(e,t,n){return this._isValidEvent(e,t,n)?(this._updatePointerEvent(e),this.extendEvent(e)):null},n.onEventEnd=function(e){this._removePointerEvent(e)},n.onRelease=function(){this.prevEvent=null,this._firstInputs=[],this._recentInputs=[]},n.getTouches=function(){return this._recentInputs.length},n._getScale=function(){return 2!==this._recentInputs.length?null:this._getDistance(this._recentInputs[0],this._recentInputs[1])/this._getDistance(this._firstInputs[0],this._firstInputs[1])},n._getCenter=function(e){return{x:e.clientX,y:e.clientY}},n._getMovement=function(e){var t=this.prevEvent.srcEvent;return e.pointerId!==t.pointerId?{x:0,y:0}:{x:e.clientX-t.clientX,y:e.clientY-t.clientY}},n._updatePointerEvent=function(e){var t=this,n=!1;this._recentInputs.forEach(function(i,r){i.pointerId===e.pointerId&&(n=!0,t._recentInputs[r]=e)}),n||(this._firstInputs.push(e),this._recentInputs.push(e))},n._removePointerEvent=function(e){this._firstInputs=this._firstInputs.filter(function(t){return t.pointerId!==e.pointerId}),this._recentInputs=this._recentInputs.filter(function(t){return t.pointerId!==e.pointerId})},t}(Lt),jt=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t.start=["mousedown","touchstart"],t.move=["mousemove","touchmove"],t.end=["mouseup","touchend","touchcancel"],t}Qe(t,e);var n=t.prototype;return n.onEventStart=function(e,t,n){var i=this._getButton(e);return this._isTouchEvent(e)&&(this._baseTouches=e.touches),this._isValidEvent(e,t,n)?(this._preventMouseButton(e,i),this.extendEvent(e)):null},n.onEventMove=function(e,t,n){return this._isValidEvent(e,t,n)?this.extendEvent(e):null},n.onEventEnd=function(e){this._isTouchEvent(e)&&(this._baseTouches=e.touches)},n.onRelease=function(){this.prevEvent=null,this._baseTouches=null},n.getTouches=function(e,t){return this._isTouchEvent(e)?e.touches.length:this._isValidButton(at[e.which],t)&&-1===this.end.indexOf(e.type)?1:0},n._getScale=function(e){return this._isTouchEvent(e)?2!==e.touches.length||this._baseTouches.length<2?1:this._getDistance(e.touches[0],e.touches[1])/this._getDistance(this._baseTouches[0],this._baseTouches[1]):this.prevEvent.scale},n._getCenter=function(e){return this._isTouchEvent(e)?{x:e.touches[0].clientX,y:e.touches[0].clientY}:{x:e.clientX,y:e.clientY}},n._getMovement=function(e){var t=this,n=[e,this.prevEvent.srcEvent].map(function(e){return t._isTouchEvent(e)?{id:e.touches[0].identifier,x:e.touches[0].clientX,y:e.touches[0].clientY}:{id:null,x:e.clientX,y:e.clientY}}),i=n[0],r=n[1];return i.id===r.id?{x:i.x-r.x,y:i.y-r.y}:{x:0,y:0}},t}(Lt),Bt=function(e,t){return t.reduce(function(t,n,i){return e[i]&&(t[e[i]]=n),t},{})},Gt=function(e){void 0===e&&(e=[]);var t=!1,n=!1,i=!1;return e.forEach(function(e){switch(e){case"mouse":n=!0;break;case"touch":t=Dt;break;case"pointer":i=zt}}),i?new Vt:t&&n?new jt:t?new Ft:n?new Ht:null};function Wt(e){return e.indexOf("touch")>-1&&{passive:!1}}var Xt=function(){function e(e){var t=e.options,n=e.interruptManager,i=e.eventManager,r=e.axisManager,s=e.animationManager;this._isOutside=!1,this._moveDistance=null,this._isStopped=!1,this.options=t,this._interruptManager=n,this._eventManager=i,this._axisManager=r,this._animationManager=s}var t=e.prototype;return t.get=function(e){return this._axisManager.get(e.axes)},t.hold=function(e,t){if(!this._interruptManager.isInterrupted()&&e.axes.length){var n={input:e,event:t};this._isStopped=!1,this._interruptManager.setInterrupt(!0),this._animationManager.stopAnimation(n),++this._eventManager.holdingCount,this._moveDistance||this._eventManager.hold(this._axisManager.get(),n),this._isOutside=this._axisManager.isOutside(e.axes),this._moveDistance=this._axisManager.get(e.axes)}},t.change=function(e,t,n,i){if(!this._isStopped&&this._interruptManager.isInterrupting()&&!this._axisManager.every(n,function(e){return 0===e})){var r=t.srcEvent?t.srcEvent:t;if(!r.__childrenAxesAlreadyChanged){var s,o=this._moveDistance||this._axisManager.get(e.axes);s=vt(o,function(e,t){return e+(n[t]||0)}),this._moveDistance&&(this._moveDistance=this._axisManager.map(s,function(e,t){var n=t.circular,i=t.range;return n&&(n[0]||n[1])?kt(e,i,n):e})),this._isOutside&&this._axisManager.every(o,function(e,t){return!St(e,t.range)})&&(this._isOutside=!1),o=this._atOutside(o),s=this._atOutside(s),this.options.nested&&this._isEndofAxis(n,o,s)||(r.__childrenAxesAlreadyChanged=!0);var a={input:e,event:t};if(i){var l=this._animationManager.getDuration(s,o);this._animationManager.animateTo(s,l,a)}else{!this._eventManager.triggerChange(s,o,a,!0)&&(this._isStopped=!0,this._moveDistance=null,this._animationManager.finish(!1))}}}},t.release=function(e,t,n,i){if(!this._isStopped&&this._interruptManager.isInterrupting()&&this._moveDistance){var r=t.srcEvent?t.srcEvent:t;r.__childrenAxesAlreadyReleased&&(n=n.map(function(){return 0}));var s=this._axisManager.get(e.axes),o=this._axisManager.get(),a=this._animationManager.getDisplacement(n),l=Bt(e.axes,a),h=this._axisManager.get(this._axisManager.map(l,function(e,t,n){return t.circular&&(t.circular[0]||t.circular[1])?s[n]+e:At(s[n]+e,t.range,t.circular,t.bounce)}));r.__childrenAxesAlreadyReleased=!0;var c=this._animationManager.getDuration(h,s,i);0===c&&(h=et({},o));var u={depaPos:o,destPos:h,duration:c,delta:this._axisManager.getDelta(o,h),inputEvent:t,input:e,isTrusted:!0};--this._eventManager.holdingCount,this._eventManager.triggerRelease(u),0===this._eventManager.holdingCount&&(this._moveDistance=null);var d=this._animationManager.getUserControl(u),g=xt(d.destPos,o),_={input:e,event:t};g||0===d.duration?(g||this._eventManager.triggerChange(d.destPos,o,_,!0),this._interruptManager.setInterrupt(!1),this._axisManager.isOutside()?this._animationManager.restore(_):this._eventManager.triggerFinish(!0)):this._animationManager.animateTo(d.destPos,d.duration,_)}},t._atOutside=function(e){var t=this;return this._isOutside?this._axisManager.map(e,function(e,t){var n=t.range[0]-t.bounce[0],i=t.range[1]+t.bounce[1];return e>i?i:e<n?n:e}):this._axisManager.map(e,function(e,n){var i=n.range[0],r=n.range[1],s=n.bounce,o=n.circular;return o[0]&&e<i||o[1]&&e>r?e:e<i?i-t._animationManager.interpolate(i-e,s[0]):e>r?r+t._animationManager.interpolate(e-r,s[1]):e})},t._isEndofAxis=function(e,t,n){return this._axisManager.every(t,function(i,r,s){return 0===e[s]||t[s]===n[s]&&(o=i,a=r.range,l=r.bounce,!(h=r.circular)[0]&&o===a[0]-l[0]||!h[1]&&o===a[1]+l[1]);var o,a,l,h})},e}(),Ut=function(e,t,n){return Math.max(Math.min(e,n),t)},Yt=function(e){function t(){var t=null!==e&&e.apply(this,arguments)||this;return t._useDuration=!0,t}Qe(t,e);var n=t.prototype;return n.interpolate=function(e,t){var n=this._easing(1e-5)/1e-5;return this._easing(e/(t*n))*t},n.updateAnimation=function(e){var t,n=this._animateParam;if(n){var i=(new Date).getTime()-n.startTime,r=(null==e?void 0:e.destPos)||n.destPos,s=null!==(t=null==e?void 0:e.duration)&&void 0!==t?t:n.duration;if((null==e?void 0:e.restart)||s<=i)this.setTo(r,s-i);else{if(null==e?void 0:e.destPos){var o=this.axisManager.get();this._initialEasingPer=this._prevEasingPer,n.delta=this.axisManager.getDelta(o,r),n.destPos=r}if(null==e?void 0:e.duration){var a=(i+this._durationOffset)/n.duration;this._durationOffset=a*s-i,n.duration=s}}}},n._initState=function(e){return this._initialEasingPer=0,this._prevEasingPer=0,this._durationOffset=0,{pos:e.depaPos,easingPer:0,finished:!1}},n._getNextState=function(e){var t=this,n=this._animateParam,i=e.pos,r=n.destPos,s=vt(i,function(e,t){return e<=r[t]?1:-1}),o=((new Date).getTime()-n.startTime+this._durationOffset)/n.duration,a=this._easing(o),l=this.axisManager.map(i,function(e,l,h){var c=o>=1?r[h]:e+n.delta[h]*(a-t._prevEasingPer)/(1-t._initialEasingPer),u=kt(c,l.range,l.circular);if(c!==u){var d=s[h]*(l.range[1]-l.range[0]);r[h]-=d,i[h]-=d}return u});return this._prevEasingPer=a,{pos:l,easingPer:a,finished:a>=1}},n._easing=function(e){return e>1?1:this._options.easing(e)},t}(function(){function e(e){var t=e.options,n=e.interruptManager,i=e.eventManager,r=e.axisManager;this._options=t,this.interruptManager=n,this.eventManager=i,this.axisManager=r,this.animationEnd=this.animationEnd.bind(this)}var t=e.prototype;return t.getDuration=function(e,t,n){var i,r=this;if(void 0!==n)i=n;else{var s=vt(t,function(t,n){return function(e,t){var n=Math.sqrt(e/t*2);return n<100?0:n}(Math.abs(t-e[n]),r._options.deceleration)});i=Object.keys(s).reduce(function(e,t){return Math.max(e,s[t])},-1/0)}return Ut(i,this._options.minimumDuration,this._options.maximumDuration)},t.getDisplacement=function(e){var t=Math.pow(e.reduce(function(e,t){return e+t*t},0),1/e.length),n=Math.abs(t/-this._options.deceleration);return e.map(function(e){return e/2*n})},t.stopAnimation=function(e){if(this._animateParam){var t=this.axisManager.get(),n=this.axisManager.map(t,function(e,t){return kt(e,t.range,t.circular)});Et(n,function(e,n){return t[n]===e})||this.eventManager.triggerChange(n,t,e,!!e),this._animateParam=null,this._raf&&(i=this._raf,_t(i)),this._raf=null,this.eventManager.triggerAnimationEnd(!!(null==e?void 0:e.event))}var i},t.getEventInfo=function(){return this._animateParam&&this._animateParam.input&&this._animateParam.inputEvent?{input:this._animateParam.input,event:this._animateParam.inputEvent}:null},t.restore=function(e){var t=this.axisManager.get(),n=this.axisManager.map(t,function(e,t){return Math.min(t.range[1],Math.max(t.range[0],e))});this.stopAnimation(),this.animateTo(n,this.getDuration(t,n),e)},t.animationEnd=function(){var e=this.getEventInfo();this._animateParam=null;var t=this.axisManager.filter(this.axisManager.get(),function(e,t){return Ct(e,t.range,t.circular)});Object.keys(t).length>0&&this.setTo(this.axisManager.map(t,function(e,t){return kt(e,t.range,t.circular)})),this.interruptManager.setInterrupt(!1),this.eventManager.triggerAnimationEnd(!!e),this.axisManager.isOutside()?this.restore(e):this.finish(!!e)},t.finish=function(e){this._animateParam=null,this.interruptManager.setInterrupt(!1),this.eventManager.triggerFinish(e)},t.getUserControl=function(e){var t=e.setTo();return t.destPos=this.axisManager.get(t.destPos),t.duration=Ut(t.duration,this._options.minimumDuration,this._options.maximumDuration),t},t.animateTo=function(e,t,n){var i=this;this.stopAnimation();var r=this._createAnimationParam(e,t,n),s=et({},r.depaPos),o=this.eventManager.triggerAnimationStart(r),a=this.getUserControl(r);if(!o&&this.axisManager.every(a.destPos,function(e,t){return Ct(e,t.range,t.circular)})&&console.warn("You can't stop the 'animation' event when 'circular' is true."),o&&!xt(a.destPos,s)){var l=(null==n?void 0:n.event)||null;this._animateLoop({depaPos:s,destPos:a.destPos,duration:a.duration,delta:this.axisManager.getDelta(s,a.destPos),isTrusted:!!l,inputEvent:l,input:(null==n?void 0:n.input)||null},function(){return i.animationEnd()})}},t.setTo=function(e,t){void 0===t&&(t=0);var n=Object.keys(e),i=this.axisManager.get(n);if(xt(e,i))return this;this.interruptManager.setInterrupt(!0);var r=mt(e,function(e,t){return i[t]!==e});return Object.keys(r).length?(r=this.axisManager.map(r,function(e,t){var n=t.range,i=t.circular;return i&&(i[0]||i[1])?e:At(e,n,i)}),xt(r,i)||(t>0?this.animateTo(r,t):(this.stopAnimation(),this.eventManager.triggerChange(r),this.finish(!1))),this):this},t.setBy=function(e,t){return void 0===t&&(t=0),this.setTo(vt(this.axisManager.get(Object.keys(e)),function(t,n){return t+e[n]}),t)},t.setOptions=function(e){this._options=et(et({},this._options),e)},t._createAnimationParam=function(e,t,n){var i=this.axisManager.get(),r=e,s=(null==n?void 0:n.event)||null;return{depaPos:i,destPos:r,duration:Ut(t,this._options.minimumDuration,this._options.maximumDuration),delta:this.axisManager.getDelta(i,r),inputEvent:s,input:(null==n?void 0:n.input)||null,isTrusted:!!s,done:this.animationEnd}},t._animateLoop=function(e,t){var n=this;if(e.duration){this._animateParam=et(et({},e),{startTime:(new Date).getTime()});var i=vt(e.destPos,function(e){return e}),r=this._initState(this._animateParam),s=function(){n._raf=null;var e=n._animateParam,o=n._getNextState(r),a=!n.eventManager.triggerChange(o.pos,r.pos);if(r=o,o.finished)return e.destPos=n._getFinalPos(e.destPos,i),xt(e.destPos,n.axisManager.get(Object.keys(e.destPos)))||n.eventManager.triggerChange(e.destPos,o.pos),void t();a?n.finish(!1):n._raf=gt(s)};s()}else this.eventManager.triggerChange(e.destPos),t()},t._getFinalPos=function(e,t){var n=this,i=1e-6;return vt(e,function(e,r){if(e>=t[r]-i&&e<=t[r]+i)return t[r];var s=n._getRoundUnit(e,r);return bt(e,s)})},t._getRoundUnit=function(e,t){var n,i=this._options.round,r=null;if(!i){var s=this.axisManager.getAxisOptions(t);n=Math.max(Ot(s.range[0]),Ot(s.range[1]),Ot(e)),r=1/Math.pow(10,n)}return r||i},e}()),$t=function(e){function t(t,n,i){void 0===t&&(t={}),void 0===n&&(n={}),void 0===i&&(i={});var r=e.call(this)||this;return r.axis=t,r._inputs=[],r.options=et({easing:function(e){return 1-Math.pow(1-e,3)},interruptable:!0,maximumDuration:1/0,minimumDuration:0,deceleration:6e-4,round:null,nested:!1},n),Object.keys(i).forEach(function(e){r.axis[e].startPos=i[e]}),r.interruptManager=new wt(r.options),r.axisManager=new Nt(r.axis),r.eventManager=new It(r),r.animationManager=new Yt(r),r.inputObserver=new Xt(r),r.eventManager.setAnimationManager(r.animationManager),r.eventManager.triggerChange(r.axisManager.get()),r}Qe(t,e);var n=t.prototype;return Object.defineProperty(n,"holding",{get:function(){return this.eventManager.holdingCount>0},enumerable:!1,configurable:!0}),n.connect=function(e,t){var n;return n="string"==typeof e?e.split(" "):e.concat(),~this._inputs.indexOf(t)&&this.disconnect(t),t.mapAxes(n),t.connect(this.inputObserver),this._inputs.push(t),this},n.disconnect=function(e){if(e){var t=this._inputs.indexOf(e);t>=0&&(this._inputs[t].disconnect(),this._inputs.splice(t,1))}else this._inputs.forEach(function(e){return e.disconnect()}),this._inputs=[];return this},n.get=function(e){return this.axisManager.get(e)},n.setTo=function(e,t){return void 0===t&&(t=0),this.animationManager.setTo(e,t),this},n.setBy=function(e,t){return void 0===t&&(t=0),this.animationManager.setBy(e,t),this},n.setOptions=function(e){return this.options=et(et({},this.options),e),this.animationManager.setOptions(e),this},n.setAxis=function(e){return this.axisManager.setAxis(e),this},n.stopAnimation=function(){return this.animationManager.stopAnimation(),this.animationManager.finish(!1),this},n.updateAnimation=function(e){return this.animationManager.updateAnimation(e),this},n.isBounceArea=function(e){return this.axisManager.isOutside(e)},n.destroy=function(){this.disconnect(),this.eventManager.destroy()},t.VERSION="3.9.2",t.TRANSFORM=ht,t.DIRECTION_NONE=1,t.DIRECTION_LEFT=2,t.DIRECTION_RIGHT=4,t.DIRECTION_UP=8,t.DIRECTION_DOWN=16,t.DIRECTION_HORIZONTAL=6,t.DIRECTION_VERTICAL=it,t.DIRECTION_ALL=30,tt([qe],t.prototype,"holding",null),t=tt([Ge],t)}(v),Kt=function(){function e(e,t){var n=this;this.axes=[],this.element=null,this._enabled=!1,this._activeEvent=null,this._atRightEdge=!1,this._rightEdgeTimer=0,this._dragged=!1,this._isOverThreshold=!1,this._preventClickWhenDragged=function(e){n._dragged&&(e.preventDefault(),e.stopPropagation()),n._dragged=!1},this._voidFunction=function(){},this.element=dt(e),this.options=et({inputType:["touch","mouse","pointer"],inputKey:["any"],inputButton:[rt],scale:[1,1],thresholdAngle:45,threshold:0,preventClickOnDrag:!1,preventDefaultOnDrag:!1,iOSEdgeSwipeThreshold:30,releaseOnScroll:!1,touchAction:null},t),this._onPanstart=this._onPanstart.bind(this),this._onPanmove=this._onPanmove.bind(this),this._onPanend=this._onPanend.bind(this)}var t=e.prototype;return t.mapAxes=function(e){var t,n;this._direction=(t=!!e[0],n=!!e[1],t&&n?30:t?6:n?it:1),this.axes=e},t.connect=function(e){return this._activeEvent&&(this._detachElementEvent(),this._detachWindowEvent(this._activeEvent)),this._attachElementEvent(e),this},t.disconnect=function(){return this._detachElementEvent(),this._detachWindowEvent(this._activeEvent),this._direction=1,this},t.destroy=function(){this.disconnect(),this.element=null},t.enable=function(){if(!Gt(this.options.inputType))throw new Error("PanInput cannot be enabled if there is no available input event.");return this._enabled||(this._enabled=!0,this._originalCssProps=function(e,t,n){var i,r=((i={})[1]="auto",i[30]="none",i[24]="pan-x",i[6]="pan-y",i),s={};if(e&&e.style){var o=t.touchAction?t.touchAction:r[n],a=et(et({},ct),{"touch-action":"none"===e.style["touch-action"]?"none":o});Object.keys(a).forEach(function(t){s[t]=e.style[t]}),Object.keys(a).forEach(function(t){e.style[t]=a[t]})}return s}(this.element,this.options,this._direction)),this},t.disable=function(){var e,t;return this._enabled&&(this._enabled=!1,e=this._originalCssProps,t=!0,Object.keys(ct).forEach(function(n){e&&e[n]===ct[n]||(t=!1)}),t||function(e,t){e&&e.style&&t&&Object.keys(t).forEach(function(n){e.style[n]=t[n]})}(this.element,this._originalCssProps)),this},t.isEnabled=function(){return this._enabled},t.release=function(){var e=this._activeEvent,t=e.prevEvent;return e.onRelease(),this._observer.release(this,t,[0,0]),this._detachWindowEvent(e),this},t._onPanstart=function(e){var t=this.options,n=t.inputKey,i=t.inputButton,r=t.preventDefaultOnDrag,s=this._activeEvent,o=s.onEventStart(e,n,i);if(o&&this._enabled&&!(s.getTouches(e,i)>1)&&!1!==o.srcEvent.cancelable){var a=this.options.iOSEdgeSwipeThreshold;this._dragged=!1,this._isOverThreshold=!1,this._observer.hold(this,o),this._atRightEdge=lt&&o.center.x>window.innerWidth-a,this._attachWindowEvent(s),r&&"touchstart"!==o.srcEvent.type&&o.srcEvent.preventDefault(),s.prevEvent=o}},t._onPanmove=function(e){var t=this,n=this.options,i=n.iOSEdgeSwipeThreshold,r=n.preventClickOnDrag,s=n.releaseOnScroll,o=n.inputKey,a=n.inputButton,l=n.threshold,h=n.thresholdAngle,c=this._activeEvent,u=c.onEventMove(e,o,a),d=c.getTouches(e,a);if(0===d||s&&u&&!u.srcEvent.cancelable)this._onPanend(e);else if(u&&this._enabled&&!(d>1)){var g=function(e,t){if(t<0||t>90)return 1;var n=Math.abs(e);return n>t&&n<180-t?it:6}(u.angle,h),_=Rt(6,this._direction,g),f=Rt(it,this._direction,g);if(c.prevEvent&<){if(u.center.x<0)return void this.release();this._atRightEdge&&(clearTimeout(this._rightEdgeTimer),u.deltaX<-i?this._atRightEdge=!1:this._rightEdgeTimer=window.setTimeout(function(){return t.release()},100))}var p=this._getDistance([u.deltaX,u.deltaY],[_,f]),v=this._getOffset([u.offsetX,u.offsetY],[_,f]),m=v.some(function(e){return 0!==e});m&&(!1!==u.srcEvent.cancelable&&u.srcEvent.preventDefault(),u.srcEvent.stopPropagation()),u.preventSystemEvent=m,m&&(this._isOverThreshold||p>=l)&&(this._dragged=r,this._isOverThreshold=!0,this._observer.change(this,u,Bt(this.axes,v))),c.prevEvent=u}},t._onPanend=function(e){var t=this.options.inputButton,n=this._activeEvent;if(n.onEventEnd(e),this._enabled&&0===n.getTouches(e,t)){this._detachWindowEvent(n),clearTimeout(this._rightEdgeTimer);var i=n.prevEvent,r=this._isOverThreshold?this._getOffset([Math.abs(i.velocityX)*i.directionX,Math.abs(i.velocityY)*i.directionY],[Rt(6,this._direction),Rt(it,this._direction)]):[0,0];n.onRelease(),this._observer.release(this,i,r)}},t._attachWindowEvent=function(e){var t=this;null==e||e.move.forEach(function(e){window.addEventListener(e,t._onPanmove,Wt(e))}),null==e||e.end.forEach(function(e){window.addEventListener(e,t._onPanend,Wt(e))})},t._detachWindowEvent=function(e){var t=this;null==e||e.move.forEach(function(e){window.removeEventListener(e,t._onPanmove)}),null==e||e.end.forEach(function(e){window.removeEventListener(e,t._onPanend)})},t._getOffset=function(e,t){var n=this.options.scale;return[t[0]?e[0]*n[0]:0,t[1]?e[1]*n[1]:0]},t._getDistance=function(e,t){return Math.sqrt(Number(t[0])*Math.pow(e[0],2)+Number(t[1])*Math.pow(e[1],2))},t._attachElementEvent=function(e){var t=this,n=Gt(this.options.inputType),i=this.element;if(n){if(!i)throw new Error("Element to connect input does not exist.");this._observer=e,this.enable(),this._activeEvent=n,i.addEventListener("click",this._preventClickWhenDragged,!0),n.start.forEach(function(e){i.addEventListener(e,t._onPanstart)}),n.move.forEach(function(e){i.addEventListener(e,t._voidFunction)})}},t._detachElementEvent=function(){var e=this,t=this._activeEvent,n=this.element;n&&(n.removeEventListener("click",this._preventClickWhenDragged,!0),null==t||t.start.forEach(function(t){n.removeEventListener(t,e._onPanstart)}),null==t||t.move.forEach(function(t){n.removeEventListener(t,e._voidFunction)})),this.disable(),this._observer=null},e}();const qt={HOLD:"hold",CHANGE:"change",RELEASE:"release",ANIMATION_END:"animationEnd",FINISH:"finish"},Zt="flick";var Qt=(e=>(e[e.IDLE=0]="IDLE",e[e.HOLDING=1]="HOLDING",e[e.DRAGGING=2]="DRAGGING",e[e.ANIMATING=3]="ANIMATING",e[e.DISABLED=4]="DISABLED",e))(Qt||{});class Jt{constructor(){this._delta=0,this._targetPanel=null}get delta(){return this._delta}get targetPanel(){return this._targetPanel}set targetPanel(e){this._targetPanel=e}onEnter(e){this._delta=e._delta,this._targetPanel=e._targetPanel}onHold(e){}onChange(e){}onRelease(e){}onAnimationEnd(e){}onFinish(e){}_moveToChangedPosition(e){const{flicking:t,axesEvent:n,transitTo:i}=e,r=n.delta[Zt];if(!r)return;this._delta+=r;const s=t.camera,o=s.position,a=n.pos[Zt],l=t.circularEnabled?K(a,s.range.min,s.range.max):a;s.lookAt(l);const h=new m(I.MOVE,{isTrusted:n.isTrusted,holding:this.holding,direction:W(0,n.delta[Zt]),axesEvent:n});t.trigger(h),h.isCanceled()&&(s.lookAt(o),i(4))}}class en extends Jt{constructor(){super(...arguments),this.holding=!1,this.animating=!0}onHold(e){const{flicking:t,axesEvent:n,transitTo:i}=e,r=this._targetPanel,s=t.control;this._delta=0,t.control.updateInput(),t.changeOnHold&&r&&s.setActive(r,s.activePanel,n.isTrusted);const o=new m(I.HOLD_START,{axesEvent:n});t.trigger(o),o.isCanceled()?i(Qt.DISABLED):i(Qt.DRAGGING)}onChange(e){this._moveToChangedPosition(e)}onFinish(e){const{flicking:t,axesEvent:n,transitTo:i}=e,r=t.control,s=r.controller.animatingContext;i(Qt.IDLE),t.trigger(new m(I.MOVE_END,{isTrusted:n.isTrusted,direction:W(s.start,s.end),axesEvent:n}));const o=this._targetPanel;o&&r.setActive(o,r.activePanel,n.isTrusted)}}class tn extends Jt{constructor(){super(...arguments),this.holding=!1,this.animating=!0}onAnimationEnd(e){const{transitTo:t}=e;t(Qt.IDLE)}onChange(e){const{axesEvent:t,transitTo:n}=e;t.stop(),n(Qt.IDLE)}onRelease(e){const{axesEvent:t,transitTo:n}=e;0===t.delta.flick&&n(Qt.IDLE)}}class nn extends Jt{constructor(){super(...arguments),this.holding=!0,this.animating=!0}onChange(e){this._moveToChangedPosition(e)}onRelease(e){const{flicking:t,axesEvent:n,transitTo:i}=e;if(t.trigger(new m(I.HOLD_END,{axesEvent:n})),t.renderer.panelCount<=0)return void i(Qt.IDLE);i(Qt.ANIMATING);const r=t.control,s=n.destPos[Zt],o=Math.max(n.duration,t.duration);try{r.moveToPosition(s,o,n)}catch(a){i(Qt.IDLE),n.setTo({[Zt]:t.camera.position},0)}}}class rn extends Jt{constructor(){super(...arguments),this.holding=!0,this.animating=!1,this._releaseEvent=null}onChange(e){const{flicking:t,axesEvent:n,transitTo:i}=e,r=n.inputEvent;if(!r)return;const s=t.horizontal?r.offsetX:r.offsetY,o=new m(I.MOVE_START,{isTrusted:n.isTrusted,holding:this.holding,direction:W(0,-s),axesEvent:n});t.trigger(o),o.isCanceled()?i(Qt.DISABLED):i(Qt.DRAGGING).onChange(e)}onRelease(e){const{flicking:t,axesEvent:n,transitTo:i}=e;if(t.trigger(new m(I.HOLD_END,{axesEvent:n})),0!==n.delta.flick)return n.setTo({flick:t.camera.position},0),void i(Qt.IDLE);this._releaseEvent=n}onFinish(e){const{flicking:t,transitTo:n}=e;if(n(Qt.IDLE),!this._releaseEvent)return;const i=this._releaseEvent.inputEvent.srcEvent;let r;if("touchend"===i.type){const e=i.changedTouches[0];r=document.elementFromPoint(e.clientX,e.clientY)}else r=i.target;const s=t.renderer.panels;let o=null;for(const a of s)if(a.contains(r)){o=a;break}if(o){const e=t.camera.position,n=o.position;t.trigger(new m(I.SELECT,{index:o.index,panel:o,direction:W(e,n)}))}}}class sn extends Jt{constructor(){super(...arguments),this.holding=!1,this.animating=!1}onEnter(){this._delta=0,this._targetPanel=null}onHold(e){const{flicking:t,axesEvent:n,transitTo:i}=e;if(t.renderer.panelCount<=0)return void i(Qt.DISABLED);const r=new m(I.HOLD_START,{axesEvent:n});t.trigger(r),r.isCanceled()?i(Qt.DISABLED):i(Qt.HOLDING)}onChange(e){const{flicking:t,axesEvent:n,transitTo:i}=e,r=t.control.controller.animatingContext,s=new m(I.MOVE_START,{isTrusted:n.isTrusted,holding:this.holding,direction:W(r.start,r.end),axesEvent:n});t.trigger(s),s.isCanceled()?i(Qt.DISABLED):i(Qt.ANIMATING).onChange(e)}}class on{constructor(){this.transitTo=e=>{let t;switch(e){case Qt.IDLE:t=new sn;break;case Qt.HOLDING:t=new rn;break;case Qt.DRAGGING:t=new nn;break;case Qt.ANIMATING:t=new en;break;case Qt.DISABLED:t=new tn}return t.onEnter(this._state),this._state=t,this._state},this._state=new sn}get state(){return this._state}fire(e,t){const n=this._state,i=u(c({},t),{transitTo:this.transitTo});switch(e){case qt.HOLD:n.onHold(i);break;case qt.CHANGE:n.onChange(i);break;case qt.RELEASE:n.onRelease(i);break;case qt.ANIMATION_END:n.onAnimationEnd(i);break;case qt.FINISH:n.onFinish(i)}}}class an{constructor(){this._onAxesHold=()=>{this._dragged=!1},this._onAxesChange=()=>{var e;this._dragged=!!(null==(e=this._panInput)?void 0:e.isEnabled())},this._preventClickWhenDragged=e=>{this._dragged&&(e.preventDefault(),e.stopPropagation()),this._dragged=!1},this._resetInternalValues(),this._stateMachine=new on}get axes(){return this._axes}get panInput(){return this._panInput}get stateMachine(){return this._stateMachine}get state(){return this._stateMachine.state}get animatingContext(){return this._animatingContext}get controlParams(){const e=this._axes;if(!e)return{range:{min:0,max:0},position:0,circular:!1};const t=e.axis[Zt];return{range:{min:t.range[0],max:t.range[1]},circular:t.circular[0],position:this.position}}get enabled(){var e,t;return null!=(t=null==(e=this._panInput)?void 0:e.isEnabled())&&t}get position(){var e,t;return null!=(t=null==(e=this._axes)?void 0:e.get([Zt])[Zt])?t:0}get range(){var e,t;return null!=(t=null==(e=this._axes)?void 0:e.axis[Zt].range)?t:[0,0]}get bounce(){var e;return null==(e=this._axes)?void 0:e.axis[Zt].bounce}init(e){this._flicking=e,this._axes=new $t({[Zt]:{range:[0,0],circular:!1,bounce:[0,0]}},{deceleration:e.deceleration,interruptable:e.interruptable,nested:e.nested,easing:e.easing}),this._panInput=new Kt(e.viewport.element,{inputType:e.inputType,threshold:e.dragThreshold,iOSEdgeSwipeThreshold:e.iOSEdgeSwipeThreshold,preventDefaultOnDrag:e.preventDefaultOnDrag,scale:e.horizontal?[e.camera.panelOrder===O.RTL?1:-1,0]:[0,-1],releaseOnScroll:!0});const t=this._axes;t.connect(e.horizontal?[Zt,""]:["",Zt],this._panInput);for(const n in qt){const i=qt[n];t.on(i,t=>{this._stateMachine.fire(i,{flicking:e,axesEvent:t})})}return this}destroy(){var e;this._axes&&(this.removePreventClickHandler(),this._axes.destroy()),null==(e=this._panInput)||e.destroy(),this._resetInternalValues()}enable(){var e;return null==(e=this._panInput)||e.enable(),this}disable(){var e;return null==(e=this._panInput)||e.disable(),this}release(){var e;return null==(e=this._panInput)||e.release(),this}updateAnimation(e,t){var n;return this._animatingContext=u(c({},this._animatingContext),{end:e}),null==(n=this._axes)||n.updateAnimation({destPos:{[Zt]:e},duration:t}),this}stopAnimation(){var e;return null==(e=this._axes)||e.stopAnimation(),this}update(e){const t=L(this._flicking),n=t.camera,i=this._axes,r=i.axis[Zt];return r.circular=[e.circular,e.circular],r.range=[e.range.min,e.range.max],r.bounce=V(t.bounce,n.size),i.axisManager.set({[Zt]:e.position}),this}addPreventClickHandler(){const e=L(this._flicking),t=this._axes,n=e.camera.element;return t.on(qt.HOLD,this._onAxesHold),t.on(qt.CHANGE,this._onAxesChange),n.addEventListener("click",this._preventClickWhenDragged,!0),this}removePreventClickHandler(){const e=L(this._flicking),t=this._axes,n=e.camera.element;return t.off(qt.HOLD,this._onAxesHold),t.off(qt.CHANGE,this._onAxesChange),n.removeEventListener("click",this._preventClickWhenDragged,!0),this}animateTo(e,t,n){var i;const r=this._axes,s=this._stateMachine.state;if(!r)return Promise.reject(new he(k.NOT_ATTACHED_TO_FLICKING,C.NOT_ATTACHED_TO_FLICKING));const o=this.getCurrentPosition();if(o===e){const t=L(this._flicking);return t.camera.lookAt(e),s.targetPanel&&t.control.setActive(s.targetPanel,t.control.activePanel,null!=(i=null==n?void 0:n.isTrusted)&&i),Promise.resolve()}this._animatingContext={start:o,end:e,offset:0};const a=()=>{r.once(qt.FINISH,()=>{this._animatingContext={start:0,end:0,offset:0}}),n?n.setTo({[Zt]:e},t):r.setTo({[Zt]:e},t)};return new Promise((e,t)=>{const n=()=>{r.off(qt.HOLD,i),e()},i=()=>{r.off(qt.FINISH,n),t(new he(k.ANIMATION_INTERRUPTED,C.ANIMATION_INTERRUPTED))};r.once(qt.FINISH,n),r.once(qt.HOLD,i),a()})}getCurrentPosition(){var e,t;return null!=(t=null==(e=this._axes)?void 0:e.get([Zt])[Zt])?t:0}updateDirection(){const e=L(this._flicking),t=this._axes,n=this._panInput;t.disconnect(n),t.connect(e.horizontal?[Zt,""]:["",Zt],n),n.options.scale=e.horizontal?[e.camera.panelOrder===O.RTL?1:-1,0]:[0,-1]}_resetInternalValues(){this._flicking=null,this._axes=null,this._panInput=null,this._animatingContext={start:0,end:0,offset:0},this._dragged=!1}}let ln=class{get controller(){return this._controller}get activeIndex(){var e,t;return null!=(t=null==(e=this._activePanel)?void 0:e.index)?t:-1}get activePanel(){return this._activePanel}get animating(){return this._controller.state.animating}get holding(){return this._controller.state.holding}constructor(){this._flicking=null,this._controller=new an,this._activePanel=null}init(e){return this._flicking=e,this._controller.init(e),this}destroy(){this._controller.destroy(),this._flicking=null,this._activePanel=null}enable(){return this._controller.enable(),this}disable(){return this._controller.disable(),this}release(){return this._controller.release(),this}updateAnimation(e,t,n){const i=this._controller.state,r=this._getPosition(e,null!=n?n:x.NONE);return i.targetPanel=e,this._controller.updateAnimation(r,t),this}stopAnimation(){return this._controller.state.targetPanel=null,this._controller.stopAnimation(),this}updatePosition(e){const t=L(this._flicking).camera,n=this._activePanel;n&&t.lookAt(t.clampToReachablePosition(n.position))}updateInput(){const e=L(this._flicking).camera;return this._controller.update(e.controlParams),this}resetActive(){return this._activePanel=null,this}moveToPanel(e,t){return d(this,arguments,function*(e,{duration:t,direction:n=x.NONE,axesEvent:i}){const r=this._getPosition(e,n);return this._triggerIndexChangeEvent(e,e.position,i,n),this._animateToPosition({position:r,duration:t,newActivePanel:e,axesEvent:i})})}setActive(e,t,n){var i;const r=L(this._flicking);this._activePanel=e,this._nextPanel=null,r.camera.updateAdaptiveHeight(),e!==t?r.trigger(new m(I.CHANGED,{index:e.index,panel:e,prevIndex:null!=(i=null==t?void 0:t.index)?i:-1,prevPanel:t,isTrusted:n,direction:t?W(t.position,e.position):x.NONE})):r.trigger(new m(I.RESTORED,{isTrusted:n}))}copy(e){this._flicking=e._flicking,this._activePanel=e._activePanel,this._controller=e._controller}_triggerIndexChangeEvent(e,t,n,i){var r;const s=L(this._flicking),o=e!==this._activePanel?I.WILL_CHANGE:I.WILL_RESTORE,a=s.camera,l=this._activePanel,h=new m(o,{index:e.index,panel:e,isTrusted:(null==n?void 0:n.isTrusted)||!1,direction:null!=i?i:W(null!=(r=null==l?void 0:l.position)?r:a.position,t)});if(this._nextPanel=e,s.trigger(h),h.isCanceled())throw new he(k.STOP_CALLED_BY_USER,C.STOP_CALLED_BY_USER)}_animateToPosition(e){return d(this,arguments,function*({position:e,duration:t,newActivePanel:n,axesEvent:i}){const r=L(this._flicking);let s=t;Math.abs(s-e)<r.animationThreshold&&(s=0);const o=()=>this._controller.animateTo(e,s,i);return this._controller.state.targetPanel=n,s<=0?o():o().then(()=>d(this,null,function*(){r.initialized&&(yield r.renderer.render())})).catch(e=>{if(!(i&&e instanceof he&&e.code===C.ANIMATION_INTERRUPTED))throw e})})}_getPosition(e,t=x.NONE){const n=L(this._flicking),i=n.camera;let r=e.position;const s=i.findNearestAnchor(r);if(e.removed||!s)throw new he(k.POSITION_NOT_REACHABLE(e.position),C.POSITION_NOT_REACHABLE);if(i.canReach(e)){if(n.circularEnabled){const e=this._controller.position,n=i.rangeDiff,s=[r,r+n,r-n].filter(n=>t===x.NONE||(t===x.PREV?n<=e:n>=e));r=s.reduce((t,n)=>Math.abs(e-n)<Math.abs(e-t)?n:t,1/0)}}else r=s.position,e=s.panel;return r}};class hn extends ln{get stopAtEdge(){return this._stopAtEdge}set stopAtEdge(e){this._stopAtEdge=e}constructor(e={}){super();const{stopAtEdge:t=!0}=e;this._stopAtEdge=t}updatePosition(e){const t=L(this._flicking).camera,n=this._activePanel;if(n){const i=n.range,r=i.min+(i.max-i.min)*e;t.lookAt(t.clampToReachablePosition(r))}}moveToPosition(e,t,n){const i=L(this._flicking).camera,r=i.clampToReachablePosition(e),s=i.findAnchorIncludePosition(r);if(!s)return Promise.reject(new he(k.POSITION_NOT_REACHABLE(e),C.POSITION_NOT_REACHABLE));const o=s.panel;return o!==this._activePanel&&this._triggerIndexChangeEvent(o,e,n),this._animateToPosition({position:this._stopAtEdge?r:e,duration:t,newActivePanel:o,axesEvent:n})}}class cn extends ln{get count(){return this._count}set count(e){this._count=e}constructor(e={}){super();const{count:t=1/0}=e;this._count=t}moveToPosition(e,t,n){const i=L(this._flicking),r=i.camera,s=r.findActiveAnchor(),o=r.findNearestAnchor(r.position),a=this._controller.state;if(!s||!o)return Promise.reject(new he(k.POSITION_NOT_REACHABLE(e),C.POSITION_NOT_REACHABLE));const l=this._calcSnapThreshold(i.threshold,e,s),h=i.animating?a.delta:e-r.position,c=Math.abs(h),u=n&&0!==n.delta[Zt]?Math.abs(n.delta[Zt]):c;let d;if(u>=l&&u>0)d=this._findSnappedAnchor(e,o);else{if(!(c>=i.threshold&&c>0))return this.moveToPanel(o.panel,{duration:t,axesEvent:n});d=this._findAdjacentAnchor(e,h,o)}return this._triggerIndexChangeEvent(d.panel,e,n),this._animateToPosition({position:r.clampToReachablePosition(d.position),duration:t,newActivePanel:d.panel,axesEvent:n})}_findSnappedAnchor(e,t){const n=L(this._flicking),i=n.camera,r=this._count,s=i.position,o=i.clampToReachablePosition(e),a=i.findAnchorIncludePosition(o);if(!t||!a)throw new he(k.POSITION_NOT_REACHABLE(e),C.POSITION_NOT_REACHABLE);if(!Number.isFinite(r))return a;const l=n.panelCount,h=i.anchorPoints;let c=Math.sign(e-s)*Math.floor(Math.abs(e-s)/i.rangeDiff);e>s&&a.index<t.index||a.position>t.position&&a.index===t.index?c+=1:(e<s&&a.index>t.index||a.position<t.position&&a.index===t.index)&&(c-=1);const u=c*l,d=a.index+u;if(Math.abs(d-t.index)<=r){const e=h[a.index];return new A({index:e.index,position:e.position+c*i.rangeDiff,panel:e.panel})}if(n.circularEnabled){const n=h[ne(t.index+Math.sign(e-s)*r,l)];let o=Math.floor(r/l);return e>s&&n.index<t.index?o+=1:e<s&&n.index>t.index&&(o-=1),new A({index:n.index,position:n.position+o*i.rangeDiff,panel:n.panel})}return h[z(t.index+Math.sign(e-s)*r,0,h.length-1)]}_findAdjacentAnchor(e,t,n){var i;const r=L(this._flicking).camera;if(r.circularEnabled){const t=r.findAnchorIncludePosition(e);if(t&&t.position!==n.position)return t}return null!=(i=t>0?r.getNextAnchor(n):r.getPrevAnchor(n))?i:n}_calcSnapThreshold(e,t,n){const i=t>n.position,r=n.panel,s=r.size,o=r.alignPosition;return Math.max(e,i?s-o+r.margin.next:o+r.margin.prev)}}class un extends ln{constructor(e={}){super(),this.setActive=(e,t,n)=>{super.setActive(e,t,n),this.updateInput()};const{count:t=1}=e;this._count=t,this._resetIndexRange()}get count(){return this._count}set count(e){this._count=e}destroy(){super.destroy(),this._resetIndexRange()}updateInput(){var e;const t=L(this._flicking),n=t.camera,i=t.renderer,r=this._controller,s=n.controlParams,o=this._count,a=r.state.animating?null==(e=n.findNearestAnchor(n.position))?void 0:e.panel:this._activePanel;if(!a)return r.update(s),this._resetIndexRange(),this;const l=s.range,h=a.position,c=a.index,u=i.panelCount;let d=c-o,g=c+o;d<0&&(d=t.circularEnabled?U((d+1)%u-1,u):z(d,0,u-1)),g>=u&&(g=t.circularEnabled?g%u:z(g,0,u-1));const _=i.panels[d],f=i.panels[g];let p=Math.max(_.position,l.min),v=Math.min(f.position,l.max);return p>h&&(p-=n.rangeDiff),v<h&&(v+=n.rangeDiff),s.range={min:p,max:v},s.circular&&(s.position<p&&(s.position+=n.rangeDiff),s.position>v&&(s.position-=n.rangeDiff)),s.circular=!1,r.update(s),this._indexRange={min:_.index,max:f.index},this}moveToPanel(e,t){return d(this,null,function*(){const n=L(this._flicking).camera;return this._controller.update(n.controlParams),(i=un.prototype,s=this,o="moveToPanel",a(r(i),o,s)).call(this,e,t);var i,s,o})}moveToPosition(e,t,n){var i;const r=L(this._flicking),s=r.camera,o=null!=(i=this._nextPanel)?i:this._activePanel,a=this._controller.range,l=this._indexRange,h=s.range,c=this._controller.state,u=z(s.clampToReachablePosition(e),a[0],a[1]),d=s.findAnchorIncludePosition(u);if(!d||!o)return Promise.reject(new he(k.POSITION_NOT_REACHABLE(e),C.POSITION_NOT_REACHABLE));const g=o.position,_=r.animating?c.delta:e-s.position,f=Math.abs(_)>=r.threshold,p=e>g?s.getNextAnchor(d):s.getPrevAnchor(d);let v,m;const E=s.anchorPoints,x=E[0],P=E[E.length-1],b=e<h.min&&te(x.panel.index,l.min,l.max),y=e>h.max&&te(P.panel.index,l.min,l.max),O=p&&(l.min<=l.max?te(p.index,l.min,l.max):p.index>=l.min||p.index<=l.max);if(b||y){const t=e<h.min?x:P;m=t.panel,v=t.position}else if(f&&d.position!==o.position)m=d.panel,v=d.position;else{if(!f||!O){const i=s.findNearestAnchor(s.position);return i?this.moveToPanel(i.panel,{duration:t,axesEvent:n}):Promise.reject(new he(k.POSITION_NOT_REACHABLE(e),C.POSITION_NOT_REACHABLE))}m=p.panel,v=p.position}return this._triggerIndexChangeEvent(m,e,n),this._animateToPosition({position:v,duration:t,newActivePanel:m,axesEvent:n})}_resetIndexRange(){this._indexRange={min:0,max:0}}}const dn=Object.freeze(Object.defineProperty({__proto__:null,AnimatingState:en,AxesController:an,Control:ln,DisabledState:tn,DraggingState:nn,FreeControl:hn,HoldingState:rn,IdleState:sn,SnapControl:cn,State:Jt,StateMachine:on,StrictControl:un},Symbol.toStringTag,{value:"Module"}));class gn{constructor(e){this._onResizeWrapper=()=>{this._onResize([])},this._onResize=e=>{const t=this._flicking,n=t.resizeDebounce,i=t.maxResizeDebounce,r=t.element;if(e.find(e=>e.target===t.element)&&1===e.length){const e={width:t.viewport.width,height:t.viewport.height},n={width:re({el:r,horizontal:!0,useFractionalSize:this._flicking.useFractionalSize,useOffset:!1,style:J(r)}),height:re({el:r,horizontal:!1,useFractionalSize:this._flicking.useFractionalSize,useOffset:!1,style:J(r)})};if(e.height===n.height&&e.width===n.width)return}n<=0?t.resize():(this._maxResizeDebounceTimer<=0&&i>0&&i>=n&&(this._maxResizeDebounceTimer=window.setTimeout(this._doScheduledResize,i)),this._resizeTimer>0&&(clearTimeout(this._resizeTimer),this._resizeTimer=0),this._resizeTimer=window.setTimeout(this._doScheduledResize,n))},this._doScheduledResize=()=>{clearTimeout(this._resizeTimer),clearTimeout(this._maxResizeDebounceTimer),this._maxResizeDebounceTimer=-1,this._resizeTimer=-1,this._flicking.resize()},this._skipFirstResize=(()=>{let e=!0;return t=>{e?e=!1:this._onResize(t)}})(),this._flicking=e,this._enabled=!1,this._resizeObserver=null,this._resizeTimer=-1,this._maxResizeDebounceTimer=-1}get enabled(){return this._enabled}enable(){const e=this._flicking,t=e.viewport;if(this._enabled&&this.disable(),e.useResizeObserver&&window.ResizeObserver){const n=0!==t.width||0!==t.height?new ResizeObserver(this._skipFirstResize):new ResizeObserver(this._onResize);this._resizeObserver=n,this.observe(e.viewport.element),e.observePanelResize&&this.observePanels()}else window.addEventListener("resize",this._onResizeWrapper);return this._enabled=!0,this}observePanels(){return this._flicking.panels.forEach(e=>{this.observe(e.element)}),this}unobservePanels(){return this._flicking.panels.forEach(e=>{this.unobserve(e.element)}),this}observe(e){const t=this._resizeObserver;return t?(t.observe(e),this):this}unobserve(e){const t=this._resizeObserver;return t?(t.unobserve(e),this._flicking.observePanelResize&&this.unobservePanels(),this):this}disable(){if(!this._enabled)return this;const e=this._resizeObserver;return e?(e.disconnect(),this._resizeObserver=null):window.removeEventListener("resize",this._onResizeWrapper),this._enabled=!1,this}}class _n{get element(){return this._element}get rendered(){return this._rendered}constructor(e){this._element=e,this._rendered=!0}show(e){const t=this.element,n=e.camera.element;t.parentElement!==n&&(n.appendChild(t),this._rendered=!0)}hide(e){const t=this.element,n=e.camera.element;t.parentElement===n&&(n.removeChild(t),this._rendered=!1)}}class fn{get element(){return this._virtualElement.nativeElement}get rendered(){return this._virtualElement.visible}get _virtualElement(){const e=this._flicking,t=this._panel.elementIndex;return e.virtual.elements[t]}constructor(e){this._flicking=e}init(e){this._panel=e}show(){}hide(){}}class pn{get element(){return this._el}get width(){return this._width-this._padding.left-this._padding.right}get height(){return this._height-this._padding.top-this._padding.bottom}get padding(){return this._padding}constructor(e,t){this._flicking=e,this._el=t,this._width=0,this._height=0,this._padding={left:0,right:0,top:0,bottom:0},this._isBorderBoxSizing=!1}setSize(e){const{width:t,height:n}=e,i=this._el,r=this._padding,s=this._isBorderBoxSizing;if(null!=t)if($(t))i.style.width=t;else{const e=s?t+r.left+r.right:t;i.style.width=`${e}px`}if(null!=n)if($(n))i.style.height=n;else{const e=s?n+r.top+r.bottom:n;i.style.height=`${e}px`}this.resize()}resize(){const e=this._el,t=J(e),{useFractionalSize:n}=this._flicking;this._width=re({el:e,horizontal:!0,useFractionalSize:n,useOffset:!1,style:t}),this._height=re({el:e,horizontal:!1,useFractionalSize:n,useOffset:!1,style:t}),this._padding={left:t.paddingLeft?parseFloat(t.paddingLeft):0,right:t.paddingRight?parseFloat(t.paddingRight):0,top:t.paddingTop?parseFloat(t.paddingTop):0,bottom:t.paddingBottom?parseFloat(t.paddingBottom):0},this._isBorderBoxSizing="border-box"===t.boxSizing}}class vn{get elements(){return this._elements}get renderPanel(){return this._renderPanel}get initialPanelCount(){return this._initialPanelCount}get cache(){return this._cache}get panelClass(){return this._panelClass}set renderPanel(e){this._renderPanel=e,this._flicking.renderer.panels.forEach(e=>e.uncacheRenderResult())}set cache(e){this._cache=e}set panelClass(e){this._panelClass=e}constructor(e,t){var n,i,r,s;this._flicking=e,this._renderPanel=null!=(n=null==t?void 0:t.renderPanel)?n:()=>"",this._initialPanelCount=null!=(i=null==t?void 0:t.initialPanelCount)?i:-1,this._cache=null!=(r=null==t?void 0:t.cache)&&r,this._panelClass=null!=(s=null==t?void 0:t.panelClass)?s:b.DEFAULT_VIRTUAL,this._elements=[]}init(){const e=this._flicking;if(!e.virtualEnabled)return;e.externalRenderer||e.renderExternal||this._initVirtualElements();const t=e.camera.children;this._elements=t.map(e=>({nativeElement:e,visible:!0}))}show(e){const t=this._elements[e],n=t.nativeElement;t.visible=!0,n.style.display&&(n.style.display="")}hide(e){const t=this._elements[e],n=t.nativeElement;t.visible=!1,n.style.display="none"}append(e=1){const t=this._flicking;return this.insert(t.panels.length,e)}prepend(e=1){return this.insert(0,e)}insert(e,t=1){if(t<=0)return[];return this._flicking.renderer.batchInsert({index:e,elements:ie(t),hasDOMInElements:!1})}remove(e,t){if(t<=0)return[];return this._flicking.renderer.batchRemove({index:e,deleteCount:t,hasDOMInElements:!1})}_initVirtualElements(){const e=this._flicking,t=e.camera.element,n=e.panelsPerView,i=document.createDocumentFragment();ie(n+1).map(e=>{const t=document.createElement("div");return t.className=this._panelClass,t.dataset.elementIndex=e.toString(),t}).forEach(e=>{i.appendChild(e)}),t.appendChild(i)}}var mn=function(e,t){return(mn=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in t)Object.prototype.hasOwnProperty.call(t,n)&&(e[n]=t[n])})(e,t)};function En(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Class extends value "+String(t)+" is not a constructor or null");function n(){this.constructor=e}mn(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new n)}var xn=function(){return xn=Object.assign||function(e){for(var t,n=1,i=arguments.length;n<i;n++)for(var r in t=arguments[n])Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e},xn.apply(this,arguments)};var Pn="undefined"!=typeof window,bn=Pn?window.navigator.userAgent:"",yn=!!Pn&&!!("getComputedStyle"in window),On=/MSIE|Trident|Windows Phone|Edge/.test(bn),Tn=!!Pn&&!!("addEventListener"in document),Rn="width",In="height";function wn(e,t){return e.getAttribute(t)||""}function An(e){return[].slice.call(e)}function Sn(e,t){return void 0===t&&(t="data-"),"loading"in e&&"lazy"===e.getAttribute("loading")||!!e.getAttribute(t+"lazy")}function Cn(e,t,n){Tn?e.addEventListener(t,n,!1):e.attachEvent?e.attachEvent("on"+t,n):e["on"+t]=n}function kn(e,t,n){e.removeEventListener?e.removeEventListener(t,n,!1):e.detachEvent?e.detachEvent("on"+t,n):e["on"+t]=null}function Nn(e,t){var n=e["client"+t]||e["offset"+t];return parseFloat(n||function(e){return(yn?window.getComputedStyle(e):e.currentStyle)||{}}(e)[t.toLowerCase()])||0}function Dn(e,t,n){var i=An(e.querySelectorAll(function(){for(var e=0,t=0,n=arguments.length;t<n;t++)e+=arguments[t].length;var i=Array(e),r=0;for(t=0;t<n;t++)for(var s=arguments[t],o=0,a=s.length;o<a;o++,r++)i[r]=s[o];return i}(["["+n+"skip] ["+n+"width]"],t.map(function(e){return["["+n+"skip] "+e,e+"["+n+"skip]","["+n+"width] "+e].join(", ")})).join(", ")));return An(e.querySelectorAll("["+n+"width], "+t.join(", "))).filter(function(e){return-1===i.indexOf(e)})}var Mn=[];function zn(e,t){!Mn.length&&Cn(window,"resize",Hn),e.__PREFIX__=t,Mn.push(e),Ln(e)}function Ln(e,t){void 0===t&&(t="data-");var n=e.__PREFIX__||t,i=parseInt(wn(e,""+n+Rn),10)||0,r=parseInt(wn(e,""+n+In),10)||0;if(wn(e,n+"fixed")===In){var s=Nn(e,"Height")||r;e.style[Rn]=i/r*s+"px"}else{s=function(e){return Nn(e,"Width")}(e)||i;e.style[In]=r/i*s+"px"}}function Hn(){Mn.forEach(function(e){Ln(e)})}var Fn=function(e){function t(t,n){void 0===n&&(n={});var i=e.call(this)||this;i.isReady=!1,i.isPreReady=!1,i.hasDataSize=!1,i.hasLoading=!1,i.isSkip=!1,i.onCheck=function(e){i.clear(),e&&"error"===e.type&&i.onError(i.element),i.hasLoading&&i.checkElement()||i.onReady()},i.options=xn({prefix:"data-"},n),i.element=t;var r=i.options.prefix;return i.hasDataSize=function(e,t){return void 0===t&&(t="data-"),!!e.getAttribute(t+"width")}(t,r),i.isSkip=function(e,t){return void 0===t&&(t="data-"),!!e.getAttribute(t+"skip")}(t,r),i.hasLoading=Sn(t,r),i}En(t,e);var n=t.prototype;return n.check=function(){return this.isSkip||!this.checkElement()?(this.onAlreadyReady(),!1):(this.hasDataSize&&zn(this.element,this.options.prefix),(this.hasDataSize||this.hasLoading)&&this.onAlreadyPreReady(),!0)},n.addEvents=function(){var e=this,t=this.element;this.constructor.EVENTS.forEach(function(n){Cn(t,n,e.onCheck)})},n.clear=function(){var e=this,t=this.element;this.constructor.EVENTS.forEach(function(n){kn(t,n,e.onCheck)}),this.removeAutoSizer()},n.destroy=function(){this.clear(),this.off()},n.removeAutoSizer=function(){if(this.hasDataSize){var e=this.options.prefix;!function(e,t){var n=Mn.indexOf(e);if(!(n<0)){var i=wn(e,t+"fixed");delete e.__PREFIX__,e.style[i===In?Rn:In]="",Mn.splice(n,1),!Mn.length&&kn(window,"resize",Hn)}}(this.element,e)}},n.onError=function(e){this.trigger("error",{element:this.element,target:e})},n.onPreReady=function(){this.isPreReady||(this.isPreReady=!0,this.trigger("preReady",{element:this.element,hasLoading:this.hasLoading,isSkip:this.isSkip}))},n.onReady=function(){var e=this.isPreReady;this.isPreReady=!0,this.isReady||(this.removeAutoSizer(),this.isReady=!0,this.trigger("ready",{element:this.element,withPreReady:!e,hasLoading:this.hasLoading,isSkip:this.isSkip}))},n.onAlreadyError=function(e){var t=this;setTimeout(function(){t.onError(e)})},n.onAlreadyPreReady=function(){var e=this;setTimeout(function(){e.onPreReady()})},n.onAlreadyReady=function(){var e=this;setTimeout(function(){e.onReady()})},t.EVENTS=[],t}(v),Vn=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}En(t,e);var n=t.prototype;return n.setHasLoading=function(e){this.hasLoading=e},n.check=function(){return this.isSkip?(this.onAlreadyReady(),!1):(this.hasDataSize?(zn(this.element,this.options.prefix),this.onAlreadyPreReady()):this.trigger("requestChildren"),!0)},n.checkElement=function(){return!0},n.destroy=function(){this.clear(),this.trigger("requestDestroy"),this.off()},n.onAlreadyPreReady=function(){e.prototype.onAlreadyPreReady.call(this),this.trigger("reqeustReadyChildren")},t.EVENTS=[],t}(Fn),jn=function(e){function t(t){void 0===t&&(t={});var n=e.call(this)||this;return n.readyCount=0,n.preReadyCount=0,n.totalCount=0,n.totalErrorCount=0,n.isPreReadyOver=!0,n.elementInfos=[],n.options=xn({loaders:{},prefix:"data-"},t),n}En(t,e);var n=t.prototype;return n.check=function(e){var t=this,n=this.options.prefix;this.clear(),this.elementInfos=An(e).map(function(e,i){var r=t.getLoader(e,{prefix:n});return r.check(),r.on("error",function(e){t.onError(i,e.target)}).on("preReady",function(e){var n=t.elementInfos[i];n.hasLoading=e.hasLoading,n.isSkip=e.isSkip;var r=t.checkPreReady(i);t.onPreReadyElement(i),r&&t.onPreReady()}).on("ready",function(e){var n=e.withPreReady,r=e.hasLoading,s=e.isSkip,o=t.elementInfos[i];o.hasLoading=r,o.isSkip=s;var a=n&&t.checkPreReady(i),l=t.checkReady(i);n&&t.onPreReadyElement(i),t.onReadyElement(i),a&&t.onPreReady(),l&&t.onReady()}),{loader:r,element:e,hasLoading:!1,hasError:!1,isPreReady:!1,isReady:!1,isSkip:!1}});var i=this.elementInfos.length;return this.totalCount=i,i||setTimeout(function(){t.onPreReady(),t.onReady()}),this},n.getTotalCount=function(){return this.totalCount},n.isPreReady=function(){return this.elementInfos.every(function(e){return e.isPreReady})},n.isReady=function(){return this.elementInfos.every(function(e){return e.isReady})},n.hasError=function(){return this.totalErrorCount>0},n.clear=function(){this.isPreReadyOver=!1,this.totalCount=0,this.preReadyCount=0,this.readyCount=0,this.totalErrorCount=0,this.elementInfos.forEach(function(e){e.loader&&e.loader.destroy()}),this.elementInfos=[]},n.destroy=function(){this.clear(),this.off()},n.getLoader=function(e,t){var n=this,i=e.tagName.toLowerCase(),r=this.options.loaders,s=t.prefix,o=Object.keys(r);if(r[i])return new r[i](e,t);var a=new Vn(e,t),l=An(e.querySelectorAll(o.join(", ")));a.setHasLoading(l.some(function(e){return Sn(e,s)}));var h=this.clone().on("error",function(e){a.onError(e.target)}).on("ready",function(){a.onReady()});return a.on("requestChildren",function(){var t=Dn(e,o,n.options.prefix);h.check(t).on("preReady",function(e){e.isReady||a.onPreReady()})}).on("reqeustReadyChildren",function(){h.check(l)}).on("requestDestroy",function(){h.destroy()}),a},n.clone=function(){return new t(xn({},this.options))},n.checkPreReady=function(e){return this.elementInfos[e].isPreReady=!0,++this.preReadyCount,!(this.preReadyCount<this.totalCount)},n.checkReady=function(e){return this.elementInfos[e].isReady=!0,++this.readyCount,!(this.readyCount<this.totalCount)},n.onError=function(e,t){var n=this.elementInfos[e];n.hasError=!0,this.trigger(new m("error",{element:n.element,index:e,target:t,errorCount:this.getErrorCount(),totalErrorCount:++this.totalErrorCount}))},n.onPreReadyElement=function(e){var t=this.elementInfos[e];this.trigger(new m("preReadyElement",{element:t.element,index:e,preReadyCount:this.preReadyCount,readyCount:this.readyCount,totalCount:this.totalCount,isPreReady:this.isPreReady(),isReady:this.isReady(),hasLoading:t.hasLoading,isSkip:t.isSkip}))},n.onPreReady=function(){this.isPreReadyOver=!0,this.trigger(new m("preReady",{readyCount:this.readyCount,totalCount:this.totalCount,isReady:this.isReady(),hasLoading:this.hasLoading()}))},n.onReadyElement=function(e){var t=this.elementInfos[e];this.trigger(new m("readyElement",{index:e,element:t.element,hasError:t.hasError,errorCount:this.getErrorCount(),totalErrorCount:this.totalErrorCount,preReadyCount:this.preReadyCount,readyCount:this.readyCount,totalCount:this.totalCount,isPreReady:this.isPreReady(),isReady:this.isReady(),hasLoading:t.hasLoading,isPreReadyOver:this.isPreReadyOver,isSkip:t.isSkip}))},n.onReady=function(){this.trigger(new m("ready",{errorCount:this.getErrorCount(),totalErrorCount:this.totalErrorCount,totalCount:this.totalCount}))},n.getErrorCount=function(){return this.elementInfos.filter(function(e){return e.hasError}).length},n.hasLoading=function(){return this.elementInfos.some(function(e){return e.hasLoading})},t}(v),Bn=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return En(t,e),t.prototype.checkElement=function(){var e=this.element,t=e.getAttribute("src");if(e.complete){if(t)return e.naturalWidth||this.onAlreadyError(e),!1;this.onAlreadyPreReady()}return this.addEvents(),On&&e.setAttribute("src",t),!0},t.EVENTS=["load","error"],t}(Fn),Gn=function(e){function t(){return null!==e&&e.apply(this,arguments)||this}return En(t,e),t.prototype.checkElement=function(){var e=this.element;return!(e.readyState>=1)&&(e.error?(this.onAlreadyError(e),!1):(this.addEvents(),!0))},t.EVENTS=["loadedmetadata","error"],t}(Fn),Wn=function(e){function t(t){return void 0===t&&(t={}),e.call(this,xn({loaders:{img:Bn,video:Gn}},t))||this}return En(t,e),t}(jn);let Xn=class{get panels(){return this._panels}get rendering(){return this._rendering}get panelCount(){return this._panels.length}get strategy(){return this._strategy}get align(){return this._align}set align(e){this._align=e;const t=G(e);this._panels.forEach(e=>{e.align=t})}constructor(e){const{align:t=E.CENTER,strategy:n}=e;this._flicking=null,this._panels=[],this._rendering=!1,this._align=t,this._strategy=n}init(e){return this._flicking=e,this._collectPanels(),this}destroy(){this._flicking=null,this._panels=[]}getPanel(e){return this._panels[e]||null}forceRenderAllPanels(){return this._panels.forEach(e=>e.markForShow()),Promise.resolve()}getRenderedPanels(){return L(this._flicking).renderer.panels.filter(e=>e.rendered)}updatePanelSize(){const e=L(this._flicking),t=this._panels;if(t.length<=0)return this;if(e.panelsPerView>0){const e=t[0];e.resize(),this._updatePanelSizeByGrid(e,t)}else e.panels.forEach(e=>e.resize());return this}batchInsert(...e){const t=this.batchInsertDefer(...e);return t.length<=0?[]:(this.updateAfterPanelChange(t,[]),t)}batchInsertDefer(...e){const t=this._panels,n=L(this._flicking),i=t[0],r=G(this._align);return e.reduce((e,s)=>{var o;const a=U(s.index,t.length),l=t.slice(a),h=s.elements.map((e,t)=>this._createPanel(e,{index:a+t,align:r,flicking:n}));if(t.splice(a,0,...h),s.hasDOMInElements&&this._insertPanelElements(h,null!=(o=l[0])?o:null),n.panelsPerView>0){const e=i||h[0].resize();this._updatePanelSizeByGrid(e,h)}else h.forEach(e=>e.resize());return l.forEach(e=>{e.increaseIndex(h.length),e.updatePosition()}),[...e,...h]},[])}batchRemove(...e){const t=this.batchRemoveDefer(...e);return t.length<=0?[]:(this.updateAfterPanelChange([],t),t)}batchRemoveDefer(...e){const t=this._panels,n=L(this._flicking),{control:i}=n,r=i.activePanel;return e.reduce((e,n)=>{const{index:s,deleteCount:o}=n,a=U(s,t.length),l=t.slice(a+o),h=t.splice(a,o);return h.length<=0?[]:(l.forEach(e=>{e.decreaseIndex(h.length),e.updatePosition()}),n.hasDOMInElements&&this._removePanelElements(h),h.forEach(e=>e.destroy()),Y(h,r)&&i.resetActive(),[...e,...h])},[])}updateAfterPanelChange(e,t){var n;const i=L(this._flicking),{camera:r,control:s}=i,o=this._panels,a=s.activePanel;if(this._updateCameraAndControl(),i.autoResize&&i.useResizeObserver&&(e.forEach(e=>{e.element&&i.autoResizer.observe(e.element)}),t.forEach(e=>{e.element&&i.autoResizer.unobserve(e.element)})),this.render(),!i.animating)if(!a||a.removed)if(o.length<=0)r.lookAt(0);else{let e=null!=(n=null==a?void 0:a.index)?n:0;e>o.length-1&&(e=o.length-1),s.moveToPanel(o[e],{duration:0}).catch(()=>{})}else s.moveToPanel(a,{duration:0}).catch(()=>{});i.camera.updateOffset(),(e.length>0||t.length>0)&&(i.trigger(new m(I.PANEL_CHANGE,{added:e,removed:t})),this.checkPanelContentsReady([...e,...t]))}checkPanelContentsReady(e){const t=L(this._flicking),n=t.resizeOnContentsReady,i=this._panels;if(!n||t.virtualEnabled)return;if((e=e.filter(e=>(e=>e.element&&!!e.element.querySelector("img, video"))(e))).length<=0)return;const r=new Wn;e.forEach(e=>{e.loading=!0}),r.on("readyElement",n=>{if(!this._flicking)return void r.destroy();const s=e[n.index],o=t.camera,a=t.control,l=a.activePanel?o.getProgressInPanel(a.activePanel):0;s.loading=!1,s.resize(),i.slice(s.index+1).forEach(e=>e.updatePosition()),t.initialized&&(o.updateRange(),o.updateOffset(),o.updateAnchors(),a.animating||(a.updatePosition(l),a.updateInput()))}),r.on("preReady",e=>{this._flicking&&this.render(),e.readyCount===e.totalCount&&r.destroy()}),r.on("ready",()=>{this._flicking&&this.render(),r.destroy()}),r.check(e.map(e=>e.element))}_updateCameraAndControl(){const e=L(this._flicking),{camera:t,control:n}=e;t.updateRange(),t.updateOffset(),t.updateAnchors(),t.resetNeedPanelHistory(),n.updateInput()}_showOnlyVisiblePanels(e){const t=e.renderer.panels,n=e.camera.visiblePanels.reduce((e,t)=>(e[t.index]=!0,e),{});t.forEach(t=>{t.index in n||t.loading?t.markForShow():e.holding||t.markForHide()})}_updatePanelSizeByGrid(e,t){const n=L(this._flicking),i=n.panelsPerView;if(i<=0)throw new he(k.WRONG_OPTION("panelsPerView",i),C.WRONG_OPTION);if(t.length<=0)return;const r=(n.camera.size-(e.margin.prev+e.margin.next)*(i-1))/i,s=n.horizontal?{width:r}:{height:r},o=c({size:r,margin:e.margin},!n.horizontal&&{height:e.height});n.noPanelStyleOverride||this._strategy.updatePanelSizes(n,s),n.panels.forEach(e=>e.resize(o))}_removeAllChildsFromCamera(){const e=L(this._flicking).camera.element;for(;e.firstChild;)e.removeChild(e.firstChild)}_insertPanelElements(e,t=null){const n=L(this._flicking).camera.element,i=(null==t?void 0:t.element)||null,r=document.createDocumentFragment();e.forEach(e=>r.appendChild(e.element)),n.insertBefore(r,i)}_removePanelElements(e){const t=L(this._flicking).camera.element;e.forEach(e=>{t.removeChild(e.element)})}_afterRender(){const e=L(this._flicking);if(e.camera.applyTransform(),e.useCSSOrder){const t=e.renderer.panels.filter(e=>e.rendered);this._strategy.getRenderingIndexesByOrder(e).forEach((e,n)=>{t[e].element&&(t[e].element.style.order=`${n}`)})}}};class Un extends Xn{render(){return d(this,null,function*(){const e=L(this._flicking),t=this._strategy;t.updateRenderingPanels(e),t.renderPanels(e),this._resetPanelElementOrder(),this._afterRender()})}_collectPanels(){const e=L(this._flicking),t=e.camera;this._removeAllTextNodes(),this._panels=this._strategy.collectPanels(e,t.children)}_createPanel(e,t){return this._strategy.createPanel(e,t)}_resetPanelElementOrder(){const e=L(this._flicking),t=e.camera.element;let n=[];n=e.useCSSOrder?this.getRenderedPanels().map(e=>e.element).reverse():this._strategy.getRenderingElementsByOrder(e).reverse(),n.forEach((e,i)=>{const r=n[i-1]?n[i-1]:null;e.nextElementSibling!==r&&t.insertBefore(e,r)})}_removeAllTextNodes(){const e=L(this._flicking).camera.element;H(e.childNodes).forEach(t=>{t.nodeType===Node.TEXT_NODE&&e.removeChild(t)})}}class Yn{get element(){return this._elProvider.element}get elementProvider(){return this._elProvider}get index(){return this._index}get position(){return this._pos+this._alignPos}get size(){return this._size}get sizeIncludingMargin(){return this._size+this._margin.prev+this._margin.next}get height(){return this._height}get margin(){return this._margin}get alignPosition(){return this._alignPos}get removed(){return this._removed}get rendered(){return this._rendered}get loading(){return this._loading}get range(){return{min:this._pos,max:this._pos+this._size}}get toggled(){return this._toggled}get toggleDirection(){return this._toggleDirection}get offset(){const e=this._toggleDirection,t=this._flicking.camera.rangeDiff;return e!==x.NONE&&this._toggled?e===x.PREV?-t:t:0}get progress(){const e=this._flicking;return this.index-e.camera.progress}get outsetProgress(){const e=this.position+this.offset,t=this._alignPos,n=this._flicking.camera,i=n.position;if(i===e)return 0;if(i<e){const r=e+(n.size-n.alignPosition)+t;return-Q(i,e,r)}{const r=e-(n.alignPosition+this._size-t);return 1-Q(i,r,e)}}get visibleRatio(){const e=this.range,t=this._size,n=this.offset,i=this._flicking.camera.visibleRange,r=e.min+n,s=e.max+n;if(s<=i.min||r>=i.max)return 0;let o=t;return i.min>r&&(o-=i.min-r),i.max<s&&(o-=s-i.max),o/t}set loading(e){this._loading=e}get align(){return this._align}set align(e){this._align=e,this._updateAlignPos()}constructor(e){const{index:t,align:n,flicking:i,elementProvider:r}=e;this._index=t,this._flicking=i,this._elProvider=r,this._align=n,this._removed=!1,this._rendered=!0,this._loading=!1,this._resetInternalStates()}markForShow(){this._rendered=!0,this._elProvider.show(this._flicking)}markForHide(){this._rendered=!1,this._elProvider.hide(this._flicking)}resize(e){var t;const n=this.element,i=this._flicking,{horizontal:r,useFractionalSize:s}=i;if(!n)return this;if(e)this._size=e.size,this._margin=c({},e.margin),this._height=null!=(t=e.height)?t:re({el:n,horizontal:!1,useFractionalSize:s,useOffset:!0,style:J(n)});else{const e=J(n);this._size=re({el:n,horizontal:r,useFractionalSize:s,useOffset:!0,style:e}),this._margin=r?{prev:parseFloat(e.marginLeft||"0"),next:parseFloat(e.marginRight||"0")}:{prev:parseFloat(e.marginTop||"0"),next:parseFloat(e.marginBottom||"0")},this._height=r?re({el:n,horizontal:!1,useFractionalSize:s,useOffset:!0,style:e}):this._size}return this.updatePosition(),this._updateAlignPos(),this}setSize(e){return ee(this.element,e),this}contains(e){var t;return!!(null==(t=this.element)?void 0:t.contains(e))}destroy(){this._resetInternalStates(),this._removed=!0}includePosition(e,t=!1){return this.includeRange(e,e,t)}includeRange(e,t,n=!1){const i=this._margin,r=this.range;return n&&(r.min-=i.prev,r.max+=i.next),t>=r.min&&e<=r.max}isVisibleOnRange(e,t){const n=this.range;return t>n.min&&e<n.max}focus(e){return this._flicking.moveTo(this._index,e)}prev(){const e=this._index,t=this._flicking,n=t.renderer,i=n.panelCount;return 1===i?null:t.circularEnabled?n.getPanel(0===e?i-1:e-1):n.getPanel(e-1)}next(){const e=this._index,t=this._flicking,n=t.renderer,i=n.panelCount;return 1===i?null:t.circularEnabled?n.getPanel(e===i-1?0:e+1):n.getPanel(e+1)}increaseIndex(e){return this._index+=Math.max(e,0),this}decreaseIndex(e){return this._index-=Math.max(e,0),this}updatePosition(){const e=this._flicking.renderer.panels[this._index-1];return this._pos=e?e.range.max+e.margin.next+this._margin.prev:this._margin.prev,this}toggle(e,t){const n=this._toggleDirection,i=this._togglePosition;if(n===x.NONE||t===e)return!1;const r=this._toggled;return t>e?i>=e&&i<=t&&(this._toggled=n===x.NEXT):i<=e&&i>=t&&(this._toggled=n!==x.NEXT),r!==this._toggled}updateCircularToggleDirection(){const e=this._flicking;if(!e.circularEnabled)return this._toggleDirection=x.NONE,this._togglePosition=0,this._toggled=!1,this;const t=e.camera,n=t.range,i=t.alignPosition,r=t.visibleRange,s=r.max-r.min,o=n.min-i,a=n.max-i+s,l=this.includeRange(a-s,a,!1),h=this.includeRange(o,o+s,!1);return this._toggled=!1,l?(this._toggleDirection=x.PREV,this._togglePosition=this.range.max+n.min-n.max+i,this.toggle(1/0,t.position)):h?(this._toggleDirection=x.NEXT,this._togglePosition=this.range.min+n.max-s+i,this.toggle(-1/0,t.position)):(this._toggleDirection=x.NONE,this._togglePosition=0),this}_updateAlignPos(){this._alignPos=F(this._align,this._size)}_resetInternalStates(){this._size=0,this._pos=0,this._margin={prev:0,next:0},this._height=0,this._alignPos=0,this._toggled=!1,this._togglePosition=0,this._toggleDirection=x.NONE}}class $n{constructor(e){const{providerCtor:t}=e;this._providerCtor=t}renderPanels(){}getRenderingIndexesByOrder(e){const t=e.renderer.panels.filter(e=>e.rendered),n=t.filter(e=>e.toggled&&e.toggleDirection===x.PREV),i=t.filter(e=>e.toggled&&e.toggleDirection===x.NEXT);return[...n,...t.filter(e=>!e.toggled),...i].map(e=>e.index)}getRenderingElementsByOrder(e){const t=e.panels;return this.getRenderingIndexesByOrder(e).map(e=>t[e].element)}updateRenderingPanels(e){e.renderOnlyVisible?this._showOnlyVisiblePanels(e):e.panels.forEach(e=>e.markForShow())}collectPanels(e,t){const n=G(e.renderer.align);return t.map((t,i)=>new Yn({index:i,elementProvider:new this._providerCtor(t),align:n,flicking:e}))}createPanel(e,t){return new Yn(u(c({},t),{elementProvider:new this._providerCtor(e)}))}updatePanelSizes(e,t){e.panels.forEach(e=>e.setSize(t))}_showOnlyVisiblePanels(e){const t=e.renderer.panels,n=e.camera,i=n.visiblePanels.reduce((e,t)=>(e[t.index]=!0,e),{});t.forEach(t=>{t.index in i||t.loading?t.markForShow():e.holding||t.markForHide()}),n.updateOffset()}}class Kn extends Yn{get element(){return this._elProvider.element}get cachedInnerHTML(){return this._cachedInnerHTML}get elementIndex(){const e=this._flicking,t=e.panelsPerView+1,n=e.panelCount;let i=this._index;return this._toggled&&(i=this._toggleDirection===x.NEXT?i+n:i-n),ne(i,t)}constructor(e){super(e),e.elementProvider.init(this),this._elProvider=e.elementProvider,this._cachedInnerHTML=null}cacheRenderResult(e){this._cachedInnerHTML=e}uncacheRenderResult(){this._cachedInnerHTML=null}render(){const e=this._flicking,{renderPanel:t,cache:n}=e.virtual,i=this._elProvider.element,r=this._cachedInnerHTML||t(this,this._index);r!==i.innerHTML&&(i.innerHTML=r,n&&this.cacheRenderResult(r))}increaseIndex(e){return this.uncacheRenderResult(),super.increaseIndex(e)}decreaseIndex(e){return this.uncacheRenderResult(),super.decreaseIndex(e)}}class qn{renderPanels(e){const t=e.virtual,n=e.visiblePanels,i=ie(e.panelsPerView+1);n.forEach(e=>{const n=e.elementIndex;e.render(),t.show(n),i[n]=-1}),i.filter(e=>e>=0).forEach(e=>{t.hide(e)})}getRenderingIndexesByOrder(e){const t=e.virtual,n=[...e.visiblePanels].filter(e=>e.rendered).sort((e,t)=>e.position+e.offset-(t.position+t.offset));if(n.length<=0)return t.elements.map((e,t)=>t);return[...n.map(e=>e.elementIndex),...t.elements.map((e,t)=>u(c({},e),{idx:t})).filter(e=>!e.visible).map(e=>e.idx)]}getRenderingElementsByOrder(e){const t=e.virtual.elements;return this.getRenderingIndexesByOrder(e).map(e=>t[e].nativeElement)}updateRenderingPanels(e){const t=e.renderer.panels,n=e.camera,i=n.visiblePanels.reduce((e,t)=>(e[t.index]=!0,e),{});t.forEach(e=>{e.index in i||e.loading?e.markForShow():e.markForHide()}),n.updateOffset()}collectPanels(e){const t=G(e.renderer.align);return ie(e.virtual.initialPanelCount).map(n=>new Kn({index:n,elementProvider:new fn(e),align:t,flicking:e}))}createPanel(e,t){return new Kn(u(c({},t),{elementProvider:new fn(t.flicking)}))}updatePanelSizes(e,t){e.virtual.elements.forEach(e=>{ee(e.nativeElement,t)}),e.panels.forEach(e=>e.setSize(t))}}const Zn=Object.freeze(Object.defineProperty({__proto__:null,ExternalRenderer:class extends Xn{_removePanelElements(e){}_removeAllChildsFromCamera(){}},NormalRenderingStrategy:$n,Renderer:Xn,VanillaRenderer:Un,VirtualRenderingStrategy:qn},Symbol.toStringTag,{value:"Module"})),Qn=class extends v{constructor(e,t={}){super(),this._scheduleResize=!1;const{align:n=E.CENTER,defaultIndex:i=0,horizontal:r=!0,circular:s=!1,circularFallback:o=y.LINEAR,bound:a=!1,adaptive:h=!1,panelsPerView:c=-1,noPanelStyleOverride:u=!1,resizeOnContentsReady:d=!1,nested:g=!1,needPanelThreshold:_=0,preventEventsBeforeInit:f=!0,deceleration:p=.0075,duration:v=500,easing:m=e=>1-l(1-e,3),inputType:x=["mouse","touch"],moveType:P="snap",threshold:b=40,dragThreshold:O=1,interruptable:T=!0,bounce:R="20%",iOSEdgeSwipeThreshold:I=30,preventClickOnDrag:w=!0,preventDefaultOnDrag:A=!1,disableOnInit:S=!1,changeOnHold:C=!1,renderOnlyVisible:k=!1,virtual:N=null,autoInit:M=!0,autoResize:z=!0,useResizeObserver:L=!0,resizeDebounce:H=0,observePanelResize:F=!1,maxResizeDebounce:V=100,useFractionalSize:j=!1,externalRenderer:B=null,renderExternal:G=null,optimizeSizeUpdate:W=!1,animationThreshold:X=.5,useCSSOrder:U=!1}=t;this._initialized=!1,this._plugins=[],this._isResizing=!1,this._align=n,this._defaultIndex=i,this._horizontal=r,this._circular=s,this._circularFallback=o,this._bound=a,this._adaptive=h,this._panelsPerView=c,this._noPanelStyleOverride=u,this._resizeOnContentsReady=d,this._nested=g,this._virtual=N,this._needPanelThreshold=_,this._preventEventsBeforeInit=f,this._deceleration=p,this._duration=v,this._easing=m,this._inputType=x,this._moveType=P,this._threshold=b,this._dragThreshold=O,this._interruptable=T,this._bounce=R,this._iOSEdgeSwipeThreshold=I,this._preventClickOnDrag=w,this._preventDefaultOnDrag=A,this._disableOnInit=S,this._changeOnHold=C,this._renderOnlyVisible=k,this._autoInit=M,this._autoResize=z,this._useResizeObserver=L,this._resizeDebounce=H,this._maxResizeDebounce=V,this._observePanelResize=F,this._useFractionalSize=j,this._externalRenderer=B,this._renderExternal=G,this._optimizeSizeUpdate=W,this._animationThreshold=X,this._useCSSOrder=U,this._viewport=new pn(this,D(e)),this._autoResizer=new gn(this),this._renderer=this._createRenderer(),this._camera=this._createCamera(),this._control=this._createControl(),this._virtualManager=new vn(this,N),this._autoInit&&this.init()}get control(){return this._control}get camera(){return this._camera}get renderer(){return this._renderer}get viewport(){return this._viewport}get autoResizer(){return this._autoResizer}get initialized(){return this._initialized}get circularEnabled(){return this._camera.circularEnabled}get virtualEnabled(){return this._panelsPerView>0&&null!=this._virtual}get index(){return this._control.activeIndex}get element(){return this._viewport.element}get currentPanel(){return this._control.activePanel}get panels(){return this._renderer.panels}get panelCount(){return this._renderer.panelCount}get visiblePanels(){return this._camera.visiblePanels}get animating(){return this._control.animating}get holding(){return this._control.holding}get activePlugins(){return this._plugins}get align(){return this._align}get defaultIndex(){return this._defaultIndex}get horizontal(){return this._horizontal}get circular(){return this._circular}get circularFallback(){return this._circularFallback}get bound(){return this._bound}get adaptive(){return this._adaptive}get panelsPerView(){return this._panelsPerView}get noPanelStyleOverride(){return this._noPanelStyleOverride}get resizeOnContentsReady(){return this._resizeOnContentsReady}get nested(){return this._nested}get needPanelThreshold(){return this._needPanelThreshold}get preventEventsBeforeInit(){return this._preventEventsBeforeInit}get deceleration(){return this._deceleration}get easing(){return this._easing}get duration(){return this._duration}get inputType(){return this._inputType}get moveType(){return this._moveType}get threshold(){return this._threshold}get dragThreshold(){return this._dragThreshold}get animationThreshold(){return this._animationThreshold}get useCSSOrder(){return this._useCSSOrder}get interruptable(){return this._interruptable}get bounce(){return this._bounce}get iOSEdgeSwipeThreshold(){return this._iOSEdgeSwipeThreshold}get preventClickOnDrag(){return this._preventClickOnDrag}get preventDefaultOnDrag(){return this._preventDefaultOnDrag}get disableOnInit(){return this._disableOnInit}get changeOnHold(){return this._changeOnHold}get renderOnlyVisible(){return this._renderOnlyVisible}get virtual(){return this._virtualManager}get autoInit(){return this._autoInit}get autoResize(){return this._autoResize}get useResizeObserver(){return this._useResizeObserver}get observePanelResize(){return this._observePanelResize}get resizeDebounce(){return this._resizeDebounce}get maxResizeDebounce(){return this._maxResizeDebounce}get useFractionalSize(){return this._useFractionalSize}get externalRenderer(){return this._externalRenderer}get renderExternal(){return this._renderExternal}get optimizeSizeUpdate(){return this._optimizeSizeUpdate}set align(e){this._align=e,this._renderer.align=e,this._camera.align=e,this.resize()}set defaultIndex(e){this._defaultIndex=e}set horizontal(e){this._horizontal=e,this._control.controller.updateDirection(),this.resize()}set circular(e){this._circular=e,this.resize()}set bound(e){this._bound=e,this.resize()}set adaptive(e){this._adaptive=e,this.resize()}set panelsPerView(e){this._panelsPerView=e,this.resize()}set noPanelStyleOverride(e){this._noPanelStyleOverride=e,this.resize()}set resizeOnContentsReady(e){this._resizeOnContentsReady=e,e&&this._renderer.checkPanelContentsReady(this._renderer.panels)}set nested(e){this._nested=e;const t=this._control.controller.axes;t&&(t.options.nested=e)}set needPanelThreshold(e){this._needPanelThreshold=e}set preventEventsBeforeInit(e){this._preventEventsBeforeInit=e}set deceleration(e){this._deceleration=e;const t=this._control.controller.axes;t&&(t.options.deceleration=e)}set easing(e){this._easing=e;const t=this._control.controller.axes;t&&(t.options.easing=e)}set duration(e){this._duration=e}set inputType(e){this._inputType=e;const t=this._control.controller.panInput;t&&(t.options.inputType=e)}set moveType(e){this._moveType=e;const t=this._control,n=this._createControl(),i=t.activePanel;n.copy(t);const r=i?this._camera.getProgressInPanel(i):0;this._control=n,this._control.updatePosition(r),this._control.updateInput()}set threshold(e){this._threshold=e}set dragThreshold(e){this._dragThreshold=e;const t=this._control.controller.panInput;t&&(t.options.threshold=e)}set animationThreshold(e){this._animationThreshold=e}set useCSSOrder(e){this._useCSSOrder=e}set interruptable(e){this._interruptable=e;const t=this._control.controller.axes;t&&(t.options.interruptable=e)}set bounce(e){this._bounce=e,this._control.updateInput()}set iOSEdgeSwipeThreshold(e){this._iOSEdgeSwipeThreshold=e;const t=this._control.controller.panInput;t&&(t.options.iOSEdgeSwipeThreshold=e)}set preventClickOnDrag(e){if(e===this._preventClickOnDrag)return;const t=this._control.controller;e?t.addPreventClickHandler():t.removePreventClickHandler(),this._preventClickOnDrag=e}set preventDefaultOnDrag(e){this._preventDefaultOnDrag=e;const t=this._control.controller.panInput;t&&(t.options.preventDefaultOnDrag=e)}set disableOnInit(e){this._disableOnInit=e}set changeOnHold(e){this._changeOnHold=e}set renderOnlyVisible(e){this._renderOnlyVisible=e,this._renderer.render()}set autoResize(e){this._autoResize=e,this._initialized&&(e?this._autoResizer.enable():this._autoResizer.disable())}set useResizeObserver(e){this._useResizeObserver=e,this._initialized&&this._autoResize&&this._autoResizer.enable()}set observePanelResize(e){this._observePanelResize=e,this._initialized&&this._autoResize&&(e?this._autoResizer.observePanels():this._autoResizer.unobservePanels())}set optimizeSizeUpdate(e){this._optimizeSizeUpdate=e}init(){if(this._initialized)return Promise.resolve();const e=this._camera,t=this._renderer,n=this._control,i=this._virtualManager,r=this.trigger,s=this._preventEventsBeforeInit;return e.init(),i.init(),t.init(this),n.init(this),s&&(this.trigger=()=>this),this._initialResize(),this._moveToInitialPanel(),this._autoResize&&this._autoResizer.enable(),this._preventClickOnDrag&&n.controller.addPreventClickHandler(),this._disableOnInit&&this.disableInput(),t.checkPanelContentsReady(t.panels),this._initialized=!0,t.render().then(()=>{this._plugins.forEach(e=>e.init(this)),s&&(this.trigger=r),this.trigger(new m(I.READY))})}destroy(){this.off(),this._autoResizer.disable(),this._control.destroy(),this._camera.destroy(),this._renderer.destroy(),this._plugins.forEach(e=>e.destroy()),this._scheduleResize=!1,this._initialized=!1,this._isResizing=!1}prev(e=this._duration){var t,n,i;return this.moveTo(null!=(i=null==(n=null==(t=this._control.activePanel)?void 0:t.prev())?void 0:n.index)?i:-1,e,x.PREV)}next(e=this._duration){var t,n,i;return this.moveTo(null!=(i=null==(n=null==(t=this._control.activePanel)?void 0:t.next())?void 0:n.index)?i:this._renderer.panelCount,e,x.NEXT)}moveTo(e,t=this._duration,n=x.NONE){const i=this._renderer,r=i.panelCount,s=i.getPanel(e);return s?this._control.animating?Promise.reject(new he(k.ANIMATION_ALREADY_PLAYING,C.ANIMATION_ALREADY_PLAYING)):(this._control.holding&&this._control.controller.release(),this._control.moveToPanel(s,{duration:t,direction:n})):Promise.reject(new he(k.INDEX_OUT_OF_RANGE(e,0,r-1),C.INDEX_OUT_OF_RANGE))}updateAnimation(e,t,n){if(!this._control.animating)return;const i=this._renderer,r=i.panelCount,s=i.getPanel(e);if(!s)throw new he(k.INDEX_OUT_OF_RANGE(e,0,r-1),C.INDEX_OUT_OF_RANGE);this._control.updateAnimation(s,t,n)}stopAnimation(){this._control.animating&&this._control.stopAnimation()}getPanel(e){return this._renderer.getPanel(e)}enableInput(){return this._control.enable(),this}disableInput(){return this._control.disable(),this}getStatus(e={}){var t,n;const{index:i=!0,position:r=!0,includePanelHTML:s=!1,visiblePanelsOnly:o=!1}=e,a=this._camera,l={panels:(o?this.visiblePanels:this.panels).map(e=>{const t={index:e.index};return s&&(t.html=e.element.outerHTML),t})};if(i&&(l.index=this.index),r){const e=a.findNearestAnchor(a.position);e&&(l.position={panel:e.panel.index,progressInPanel:a.getProgressInPanel(e.panel)})}if(o){const e=this.visiblePanels;l.visibleOffset=null!=(n=null==(t=e[0])?void 0:t.index)?n:0}return l}setStatus(e){var t;if(!this._initialized)throw new he(k.NOT_INITIALIZED,C.NOT_INITIALIZED);const{index:n,position:i,visibleOffset:r,panels:s}=e,o=this._renderer,a=this._control;if((null==(t=s[0])?void 0:t.html)&&!this._renderExternal&&(o.batchRemove({index:0,deleteCount:this.panels.length,hasDOMInElements:!0}),o.batchInsert({index:0,elements:X(s.map(e=>e.html)),hasDOMInElements:!0})),null!=n){const e=r?n-r:n;this.moveTo(e,0).catch(()=>{})}if(i&&this._moveType===P.FREE_SCROLL){const{panel:e,progressInPanel:t}=i,n=r?e-r:e,s=o.panels[n].range,l=s.min+(s.max-s.min)*t;a.moveToPosition(l,0).catch(()=>{})}}addPlugins(...e){return this._initialized&&e.forEach(e=>e.init(this)),this._plugins.push(...e),this}removePlugins(...e){return e.forEach(e=>{const t=Z(this._plugins,t=>t===e);t>=0&&(e.destroy(),this._plugins.splice(t,1))}),this}resize(){return d(this,null,function*(){if(!this._initialized)return;if(this._isResizing)return void(this._scheduleResize=!0);this._scheduleResize=!1,this._isResizing=!0;const e=this._viewport,t=this._renderer,n=this._camera,i=this._control,r=i.activePanel,s=e.width,o=e.height,a=r?n.getProgressInPanel(r):0;if(this.trigger(new m(I.BEFORE_RESIZE,{width:s,height:o,element:e.element})),e.resize(),this._optimizeSizeUpdate?(this.horizontal&&e.width!==s||!this.horizontal&&e.height!==o)&&(yield t.forceRenderAllPanels()):yield t.forceRenderAllPanels(),!this._initialized)return;if(t.updatePanelSize(),n.updateAlignPos(),n.updateRange(),n.updateAnchors(),n.updateAdaptiveHeight(),n.updatePanelOrder(),n.updateOffset(),yield t.render(),!this._initialized)return;i.animating||(i.updatePosition(a),i.updateInput());const l=e.width,h=e.height,c=l!==s||h!==o;this.trigger(new m(I.AFTER_RESIZE,{width:e.width,height:e.height,prev:{width:s,height:o},sizeChanged:c,element:e.element})),this._isResizing=!1,this._scheduleResize&&this.resize()})}append(e){return this.insert(this._renderer.panelCount,e)}prepend(e){return this.insert(0,e)}insert(e,t){if(this._renderExternal)throw new he(k.NOT_ALLOWED_IN_FRAMEWORK,C.NOT_ALLOWED_IN_FRAMEWORK);return this._renderer.batchInsert({index:e,elements:X(t),hasDOMInElements:!0})}remove(e,t=1){if(this._renderExternal)throw new he(k.NOT_ALLOWED_IN_FRAMEWORK,C.NOT_ALLOWED_IN_FRAMEWORK);return this._renderer.batchRemove({index:e,deleteCount:t,hasDOMInElements:!0})}_createControl(){var e;const t=this._moveType,n=Object.keys(P).map(e=>P[e]),i=Array.isArray(t)?t[0]:t,r=Array.isArray(t)&&null!=(e=t[1])?e:{};if(!Y(n,i))throw new he(k.WRONG_OPTION("moveType",JSON.stringify(t)),C.WRONG_OPTION);switch(i){case P.SNAP:return new cn(r);case P.FREE_SCROLL:return new hn(r);case P.STRICT:return new un(r)}}_createCamera(){return this._circular&&this._bound&&console.warn('"circular" and "bound" option cannot be used together, ignoring bound.'),new _e(this,{align:this._align})}_createRenderer(){const e=this._externalRenderer;return this._virtual&&this._panelsPerView<=0&&console.warn('"virtual" and "panelsPerView" option should be used together, ignoring virtual.'),e||(this._renderExternal?this._createExternalRenderer():this._createVanillaRenderer())}_createExternalRenderer(){const{renderer:e,rendererOptions:t}=this._renderExternal;return new e(c({align:this._align},t))}_createVanillaRenderer(){const e=this.virtualEnabled;return new Un({align:this._align,strategy:e?new qn:new $n({providerCtor:_n})})}_moveToInitialPanel(){const e=this._renderer,t=this._control,n=this._camera,i=e.getPanel(this._defaultIndex)||e.getPanel(0);if(!i)return;const r=n.findNearestAnchor(i.position),s=r&&i.position!==r.panel.position&&i.index!==r.panel.index?r.panel:i;if(t.setActive(s,null,!1),!r)throw new he(k.POSITION_NOT_REACHABLE(s.position),C.POSITION_NOT_REACHABLE);let o=s.position;n.canReach(s)||(o=r.position),n.lookAt(o),t.updateInput(),n.updateOffset()}_initialResize(){const e=this._viewport,t=this._renderer,n=this._camera,i=this._control;this.trigger(new m(I.BEFORE_RESIZE,{width:0,height:0,element:e.element})),e.resize(),t.updatePanelSize(),n.updateAlignPos(),n.updateRange(),n.updateAnchors(),n.updateOffset(),i.updateInput();const r=e.width,s=e.height,o=0!==r||0!==s;this.trigger(new m(I.AFTER_RESIZE,{width:e.width,height:e.height,prev:{width:0,height:0},sizeChanged:o,element:e.element}))}};Qn.VERSION="4.16.1";let Jn=Qn;const ei={HOLD_START:"sideHoldStart",HOLD_END:"sideHoldEnd",MOVE_START:"sideMoveStart",MOVE:"sideMove",MOVE_END:"sideMoveEnd",WILL_CHANGE:"sideWillChange",CHANGED:"sideChanged",WILL_RESTORE:"sideWillRestore",RESTORED:"sideRestored"};const ti=Object.freeze(Object.defineProperty({__proto__:null,CrossFlicking:class extends Jn{constructor(e,t){super(e,t),this._syncToCategory=(e,t)=>{this._disableIndexSync||(this.stopAnimation(),this._sideFlicking.forEach((n,i)=>{const{start:r,end:s}=this._sideState[i];r<=e&&s>=e&&t!==i&&(n.stopAnimation(),n.moveTo(e,0),this.moveTo(i,0))}))},this._setDraggable=(e,t)=>{if(!this._disableSlideOnHold)return;const n=this._originalDragThreshold,i=t?n&&n>=10?n:10:1/0;e===T.HORIZONTAL===this.horizontal?this.dragThreshold=i:e===T.VERTICAL===this.horizontal&&this._sideFlicking.forEach(e=>{e.dragThreshold=i})},this._setPreviousSideIndex=()=>{this._sideFlicking.forEach((e,t)=>{const{start:n,end:i}=this._sideState[t];this._preserveIndex?this._nextIndex!==t&&(e.index<n?(e.stopAnimation(),e.moveTo(n,0)):e.index>i&&(e.stopAnimation(),e.moveTo(i,0))):this._nextIndex!==t&&e.moveTo(n,0)})},this._addSideIndex=e=>{e.sideIndex=this._sideFlicking[e.index].index},this._onHorizontalHoldStart=()=>{this._setDraggable(T.HORIZONTAL,!0),this._moveDirection=null},this._onHorizontalMove=e=>{e.isTrusted&&!this._moveDirection&&(this._setDraggable(T.VERTICAL,!1),this._moveDirection=T.HORIZONTAL)},this._onHorizontalMoveEnd=e=>{const t=this.visiblePanels;t.length>1?this._nextIndex="NEXT"===e.direction?t[1].index:t[0].index:this._nextIndex=t[0].index,this._setDraggable(T.VERTICAL,!0),this._moveDirection=null,requestAnimationFrame(()=>this._setPreviousSideIndex()),e.isTrusted&&this._syncToCategory(this._sideFlicking[this._nextIndex].index,this._nextIndex)},this._onSideHoldStart=()=>{this._setDraggable(T.VERTICAL,!0),this._moveDirection=null},this._onSideMove=e=>{e.isTrusted&&!this._moveDirection&&(this._setDraggable(T.HORIZONTAL,!1),this._moveDirection=T.VERTICAL)},this._onSideMoveEnd=()=>{this._setDraggable(T.HORIZONTAL,!0),this._moveDirection=null},this._onSideChanged=e=>{this.visiblePanels.length<2&&this._sideFlicking[this.index]===e.currentTarget&&this._syncToCategory(e.index,this.index)};const{sideOptions:n={},preserveIndex:i=!0,disableSlideOnHold:r=!0,disableIndexSync:s=!1}=t;this._moveDirection=null,this._nextIndex=0,this._originalDragThreshold=this.dragThreshold,this._sideOptions=n,this._preserveIndex=i,this._disableSlideOnHold=r,this._disableIndexSync=s}get sideFlicking(){return this._sideFlicking}get sideIndex(){return this._sideFlicking.map(e=>e.index)}get sideState(){return this._sideState}get sideOptions(){return this._sideOptions}get preserveIndex(){return this._preserveIndex}get disableSlideOnHold(){return this._disableSlideOnHold}get disableIndexSync(){return this._disableIndexSync}set sideOptions(e){this._sideOptions=e}set preserveIndex(e){this._preserveIndex=e}set disableSlideOnHold(e){this._disableSlideOnHold=e}set disableIndexSync(e){this._disableIndexSync=e}init(){return super.init().then(()=>{this._sideState=this._createSideState(),this._sideFlicking=this._createSideFlicking(),this._addComponentEvents()})}destroy(){this._sideFlicking.forEach(e=>{e.destroy()}),super.destroy()}_addComponentEvents(){this.on(I.HOLD_START,this._onHorizontalHoldStart),this.on(I.MOVE,this._onHorizontalMove),this.on(I.MOVE_END,this._onHorizontalMoveEnd),[I.CHANGED,I.WILL_CHANGE].forEach(e=>{this.on(e,this._addSideIndex)}),this._sideFlicking.forEach((e,t)=>{e.on(I.HOLD_START,this._onSideHoldStart),e.on(I.MOVE,this._onSideMove),e.on(I.MOVE_END,this._onSideMoveEnd),e.on(I.CHANGED,this._onSideChanged),Object.keys(ei).forEach(n=>{e.on(I[n],e=>{this.trigger(new m(ei[n],c({mainIndex:t},e)))})})})}_createSideState(){const e=this.element,t=this.camera.element,n=H(t.children);let i=[];if(ae(e,"data-cross-").structure)i=this._getSideStateFromCrossStructure(n);else{const e=this._getGroupFromAttribute(n),t=Object.keys(e);t.length?(i=this._getSideStateFromGroup(e),this.remove(0,this.panelCount-t.length)):i=this._getSideStateFromPanels(n),this._createCrossStructure(i)}return this.resize(),i}_createCrossStructure(e){const t=document.createElement("div");let n="";t.classList.add(b.CAMERA),e.forEach((e,t)=>{const i=this.camera.children[t];n+=e.element.innerHTML,Array.from(i.attributes).forEach(e=>i.removeAttribute(e.name))}),t.innerHTML=n,e.forEach((e,n)=>{const i=this.camera.children[n];[b.VIEWPORT,b.VERTICAL].forEach(e=>{i.classList.contains(e)||i.classList.add(e)}),i.innerHTML=t.outerHTML}),this.element.setAttribute("data-cross-structure","true")}_getGroupFromAttribute(e){const t=[],n={};return e.forEach(e=>{const i=ae(e,"data-cross-").groupkey;i&&!Y(t,i)?(t.push(i),n[i]=[e]):i&&n[i].push(e)}),n}_getSideStateFromGroup(e){return Object.keys(e).reduce((t,n)=>{const i=t.length?+t[t.length-1].end+1:0,r=e[n].reduce((e,t)=>(e.innerHTML+=t.outerHTML,e),document.createElement("div"));return[...t,{key:n,start:i,end:i+e[n].length-1,element:r}]},[])}_getSideStateFromPanels(e){return e.reduce((e,t,n)=>{const i=e.length?+e[e.length-1].end+1:0;return[...e,{key:n.toString(),start:i,end:i+t.children.length-1,element:t}]},[])}_getSideStateFromCrossStructure(e){const t=this._getGroupFromAttribute(e);return this._getSideStateFromGroup(t)}_createSideFlicking(){return this.sideState.map((e,t)=>new Jn(this.camera.children[t],u(c({},this.sideOptions),{horizontal:!1,panelsPerView:1,defaultIndex:e.start})))}},SIDE_EVENTS:ei},Symbol.toStringTag,{value:"Module"})),ni=Object.freeze(Object.defineProperty({__proto__:null,AnchorPoint:A,Panel:Yn,VanillaElementProvider:_n,Viewport:pn,VirtualElementProvider:fn,VirtualManager:vn,VirtualPanel:Kn},Symbol.toStringTag,{value:"Module"})),ii=e=>{const t="object"==typeof e?e.camera:e;return si(t)},ri=e=>{const t="object"==typeof e?e.panel:e;return B(si(t))},si=e=>{if("number"==typeof e)return`${e}px`;switch(e){case E.CENTER:return"50%";case E.NEXT:return"100%";case E.PREV:return"0%";default:return e}},oi=(e,t,n,i,r)=>e.batchInsertDefer(...t.added.slice(i,r).map((e,t)=>({index:e,elements:[n[t]],hasDOMInElements:!1}))),ai=(e,t,n)=>{const i=e.panels.slice(t,n);return e.batchRemoveDefer({index:t,deleteCount:i.length,hasDOMInElements:!1})},li=Object.freeze(Object.defineProperty({__proto__:null,getDefaultCameraTransform:(e=E.CENTER,t=!0,n)=>{const i=ii(e),r=ri(e);if(null==r)return"";const s=`calc(${i} - (${n||"0px"} * ${r.percentage}) - ${r.absolute}px)`;return t?`translate(${s})`:`translate(0, ${s})`},getRenderingPanels:(e,t)=>{const n=t.removed.reduce((e,t)=>(e[t]=!0,e),{}),i=t.maintained.reduce((e,[t,n])=>(e[t]=n,e),{}),r=e.panels.filter(e=>!n[e.index]);return e.useCSSOrder||r.sort((e,t)=>e.position+e.offset-(t.position+t.offset)),[...r.map(e=>t.list[i[e.index]]),...t.added.map(e=>t.list[e])]},sync:(e,t,n)=>{const i=e.renderer,r=i.panels,s=[...t.prevList],o=[],a=[];if(t.removed.length>0){let e=-1,n=-1;t.removed.forEach(t=>{e<0&&(e=t),n>=0&&t!==n-1?(a.push(...ai(i,n,e+1)),e=t,n=t):n=t,s.splice(t,1)}),a.push(...ai(i,n,e+1))}if(t.ordered.forEach(([e,t])=>{const n=r.splice(e,1)[0];r.splice(t,0,n)}),t.ordered.length>0&&(r.forEach((e,t)=>{const n=t-e.index;n>0?e.increaseIndex(n):e.decreaseIndex(-n)}),r.sort((e,t)=>e.index-t.index),r.forEach(e=>{e.updatePosition()})),t.added.length>0){let e=-1,r=-1;const a=n.slice(s.length);t.added.forEach((n,s)=>{e<0&&(e=s),r>=0&&n!==r+1?(o.push(...oi(i,t,a,e,s+1)),e=-1,r=-1):r=n}),e>=0&&o.push(...oi(i,t,a,e))}if(t.added.length>0||t.removed.length>0)i.updateAfterPanelChange(o,a);else if(t.ordered.length>0){const t=e.camera;t.updateRange(),t.updateOffset(),t.updateAnchors(),t.resetNeedPanelHistory()}},withFlickingMethods:(e,t)=>{[v.prototype,Jn.prototype].forEach(n=>{Object.getOwnPropertyNames(n).filter(t=>!e[t]&&0!==t.indexOf("_")&&"constructor"!==t).forEach(i=>{const r=Object.getOwnPropertyDescriptor(n,i);if(r.value)Object.defineProperty(e,i,{value:function(...e){return r.value.call(this[t],...e)}});else{const n={};r.get&&(n.get=function(){var e;const n=this[t];return n&&(null==(e=r.get)?void 0:e.call(n))}),r.set&&(n.set=function(...e){var n;return null==(n=r.set)?void 0:n.call(this[t],...e)}),Object.defineProperty(e,i,n)}})})}},Symbol.toStringTag,{value:"Module"})),hi=e=>!e.circular&&0===e.index,ci=e=>!e.circular&&e.index===e.panelCount-1,ui=e=>e.panelCount,di=e=>e.index,gi=e=>{const t=e.camera,n=(t.position-t.range.min)/(t.range.max-t.range.min);return 100*Math.min(Math.max(n,0),1)},_i=({onInit:e,onDestroy:t,setMethods:n,getProps:i})=>{var r,s,o;let a;n(["moveTo"]);const l=i().options,h=We({isReachStart:!(null==l?void 0:l.defaultIndex)||0===(null==l?void 0:l.defaultIndex),isReachEnd:!(!(null==l?void 0:l.totalPanelCount)||!(null==l?void 0:l.defaultIndex))&&l.defaultIndex===l.totalPanelCount-1,totalPanelCount:null!=(r=null==l?void 0:l.totalPanelCount)?r:0,currentPanelIndex:null!=(s=null==l?void 0:l.defaultIndex)?s:0,progress:0,indexProgress:null!=(o=null==l?void 0:l.defaultIndex)?o:0,moveTo:e=>null==a?Promise.reject(new Error("Flicking instance is not available")):(null==a?void 0:a.animating)?Promise.resolve():a.moveTo(e)});const c=()=>{void 0!==a&&(h.isReachStart=hi(a),h.isReachEnd=ci(a),h.currentPanelIndex=di(a))},u=()=>{void 0!==a&&(c(),h.totalPanelCount=ui(a))},d=()=>{void 0!==a&&(h.progress=gi(a),h.indexProgress=(e=>{const t=e.camera,n=t.anchorPoints,i=n.length,r=t.position,s=e.circularEnabled;let o=0;const{min:a,max:l}=t.range,h=n[0],c=l-n[i-1].position+(h.position-a);return n.some((e,t)=>{const a=e.position,l=n[t+1];if(0===t&&r<=a)o=s?(r-a)/c:(r-a)/e.panel.size;else if(t===i-1&&r>=a)o=s?t+(r-a)/c:t+(r-a)/e.panel.size;else{if(!(l&&a<=r&&r<=l.position))return!1;o=t+(r-a)/(l.position-a)}return!0}),o})(a))};return e((e,t)=>{a=t.flicking,void 0!==a&&(h.isReachStart=hi(a),h.isReachEnd=ci(a),h.currentPanelIndex=di(a),h.progress=gi(a),h.totalPanelCount=ui(a),null==a||a.on("changed",c),null==a||a.on("panelChange",u),null==a||a.on("move",d))}),t(()=>{null==a||a.off("changed",c),null==a||a.off("panelChange",u),null==a||a.off("move",d)}),h},fi=Object.freeze(Object.defineProperty({__proto__:null,connectFlickingReactiveAPI:(e,t)=>{const n=function(e,t){var n=Ce(e)?{setup:e}:e;function i(){var e,i,r,s,o;return null!==(o=null!==(r=null!==(e=null==t?void 0:t())&&void 0!==e?e:null===(i=n.props)||void 0===i?void 0:i.call(n))&&void 0!==r?r:null===(s=n.data)||void 0===s?void 0:s.call(n))&&void 0!==o?o:{}}var r=new v,s=[],o=[],a=[],l=[],h={current:null},c=[],u=null,d=[],g=[],_=function(e){s.push(e)},f=function(e){u=e},p=function(e){d=e},m=function(e){g=e};return n.setup&&(h.current=n.setup({getProps:i,setInitialState:f,setEvents:p,setMethods:m,onMounted:_,onDestroy:function(e){a.push(e)},onInit:function(e){o.push(e)},emit:function(e){for(var t=[],n=1;n<arguments.length;n++)t[n-1]=arguments[n];r.trigger.apply(r,ze([e],t,!1))},on:function(e){l.push(e)}})||null),n.created&&(h.current=n.created(i())||null),n.events&&p(n.events),n.state&&f(n.state),n.methods&&m(n.methods),n.mounted&&_(n.mounted),n.destroy&&a.push(n.destroy),n.init&&o.push(n.init),n.on&&l.push(function(e,t,i){var r=n.on(e,t,i);return function(){var s;r&&r(),null===(s=n.off)||void 0===s||s.call(n,e,t,i)}}),{events:function(){return d},state:function(){var e=h.current;if(u)return u;if(e){var t=Ye(e);f(Se(t).reduce(function(e,n){return e[n]=t[n].current,e},{}))}return u||{}},instance:function(){return h.current},mounted:function(){var e=i();s.forEach(function(t){h.current=t(e,h.current)||h.current})},init:function(){var e=h.current,t=i();c=d.map(function(e){var t=function(){for(var t,n=[],i=0;i<arguments.length;i++)n[i]=arguments[i];(t=r).trigger.apply(t,ze([e],n,!1))},n=h.current;return l.map(function(i){return i(n,e,t)}).filter(Boolean)}),o.forEach(function(n){n(e,t)})},destroy:function(){c.forEach(function(e){e.forEach(function(e){e()})}),r.off();var e=h.current,t=i();a.forEach(function(n){n(e,t)})},methods:function(){return e=h,n={},(t=g)?(t.forEach(function(t){n[t]=function(){for(var n=[],i=0;i<arguments.length;i++)n[i]=arguments[i];var r=e.current||e.value;return r[t].apply(r,n)}}),n):n;var e,t,n},on:function(e,t){r.on(e,t)},off:function(e,t){r.off(e,t)}}}(_i,()=>({flicking:e,options:t}));n.mounted();const i=n.instance();return n.init(),i},flickingReactiveAPIAdapter:_i},Symbol.toStringTag,{value:"Module"})),pi=c(c({},w),R);return N(Jn,ni),N(Jn,fe),N(Jn,dn),N(Jn,Zn),N(Jn,pi),N(Jn,li),N(Jn,le),N(Jn,ti),N(Jn,fi),Jn});
|
|
2
2
|
//# sourceMappingURL=flicking.pkgd.min.js.map
|