JavaScript UI component library, includes the latest Fancybox
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

2 lines
20 KiB

/*! License details at fancyapps.com/license */
import{isPlainObject as e}from"../utils/isPlainObject.js";import{isNode as t}from"../utils/isNode.js";import{isString as n}from"../utils/isString.js";import{getScrollableParent as i}from"../utils/getScrollableParent.js";import{getDirectChildren as o}from"../utils/getDirectChildren.js";import{extend as s}from"../utils/extend.js";import{map as r}from"../utils/map.js";import{stringToHtml as l}from"../utils/strToHtml.js";import{clamp as a}from"../utils/clamp.js";import{addClass as c}from"../utils/addClass.js";import{removeClass as d}from"../utils/removeClass.js";import{toggleClass as u}from"../utils/toggleClass.js";import{Tween as f}from"../libs/tween.js";import{Gestures as p}from"../libs/gestures.js";import{en_EN as v}from"./l10n/en_EN.js";const m=e=>{e.cancelable&&e.preventDefault()},g={adaptiveHeight:!1,center:!0,classes:{container:"f-carousel",isEnabled:"is-enabled",isLTR:"is-ltr",isRTL:"is-rtl",isHorizontal:"is-horizontal",isVertical:"is-vertical",hasAdaptiveHeight:"has-adaptive-height",viewport:"f-carousel__viewport",slide:"f-carousel__slide",isSelected:"is-selected"},dragFree:!1,enabled:!0,errorTpl:'<div class="f-html">{{ERROR}}</div>',fill:!1,infinite:!0,initialPage:0,l10n:v,rtl:!1,slides:[],slidesPerPage:"auto",spinnerTpl:'<div class="f-spinner"></div>',transition:"fade",tween:{clamp:!0,mass:1,tension:200,friction:25,restDelta:1,restSpeed:1,velocity:0},vertical:!1};let h,b=0;const E=(v,y={},M={})=>{b++;let x,w,S,j,L,P=0,T=Object.assign({},g),O=Object.assign({},g),R={},A=null,C=null,H=!1,V=!1,$=!1,z="height",D=0,F=!0,q=0,I=0,k=0,N=0,B="*",_=[],G=[];const X=new Set;let Y=[],J=0,K=0;function Q(e,...t){let n=O[e];return n&&n instanceof Function?n(Pe,...t):n}function U(e,t=[]){const n=Q("l10n")||{};e=String(e).replace(/\{\{(\w+)\}\}/g,((e,t)=>n[t]||e));for(let n=0;n<t.length;n++)e=e.split(t[n][0]).join(t[n][1]);return e=e.replace(/\{\{(.*?)\}\}/g,((e,t)=>t))}const W=new Map;function Z(e,...t){const n=W.get(e)||[];O.on&&n.push(O.on[e]);for(const e of n)e&&e instanceof Function&&e(Pe,...t);"*"!==e&&Z("*",e,...t)}function ee(){var t,n;const r=s({},g,T);s(r,g,T);let l="";const u=T.breakpoints||{};if(u)for(const[e,t]of Object.entries(u))window.matchMedia(e).matches&&(l+=e,s(r,t));if(void 0===L||l!==L){if(L=l,0!==P){let e=null===(n=null===(t=Y[q])||void 0===t?void 0:t.slides[0])||void 0===n?void 0:n.index;void 0===e&&(e=O.initialSlide),r.initialSlide=e,r.slides=[];for(const e of _)e.isVirtual&&r.slides.push(e)}Le(),O=r,!1!==O.enabled&&(P=0,Z("init"),function(){for(const[e,t]of Object.entries(Object.assign(Object.assign({},M),O.plugins||{})))if(e&&!R[e]&&t instanceof Function){const n=t();n.init(Pe,E),R[e]=n}Z("initPlugins")}(),function(){if(!A)return;const t=Q("classes")||{};c(A,t.container),c(A,t.isEnabled);const n=Q("style");if(n&&e(n))for(const[e,t]of Object.entries(n))A.style.setProperty(e,t);C=A.querySelector(`.${t.viewport}`),C||(C=document.createElement("div"),c(C,t.viewport),C.append(...o(A,`.${t.slide}`)),A.insertAdjacentElement("afterbegin",C)),A.carousel=Pe,Z("initLayout")}(),function(){if(!C)return;const e=Q("classes")||{};_=[],[...o(C,`.${e.slide}`)].forEach((e=>{e.parentElement&&(_.push(ue(Object.assign({el:e,isVirtual:!1},e.dataset||{}))),e.parentElement.removeChild(e))})),de(Q("slides"));for(const e of _)Z("addSlide",e);Z("initSlides")}(),w=f().on("start",(()=>{F=!1,x&&x.isPointerDown()||(ie(),je())})).on("step",(e=>{D=e.pos,je()})).on("end",(e=>{(null==x?void 0:x.isPointerDown())||(D=e.pos,w&&!H&&(D<k||D>N)?w.spring({clamp:!0,mass:1,tension:200,friction:25,velocity:0,restDelta:1,restSpeed:1}).from({pos:D}).to({pos:a(k,D,N)}).start():F||(F=!0,Z("settle")))})),function(){const e=Q("gestures");C&&!1!==e&&(x=p(C,e).on("start",(e=>{var t,n;if(!w)return;const{srcEvent:i}=e;function o(e){const t=window.getComputedStyle(e),n=new DOMMatrixReadOnly(t.transform);return{width:n.m41||0,height:n.m42||0}}$&&m(i),w.pause(),w.getCurrentVelocities().pos=0;const s=null===(t=Y[q])||void 0===t?void 0:t.slides[0];s&&X.has(s.index)&&s.el&&(D=s.offset||0,D+=(o(s.el)[z]||0)*(V&&!$?1:-1)),be(),H||(D<k||D>N)&&w.spring({clamp:!0,mass:1,tension:500,friction:25,velocity:(null===(n=w.getCurrentVelocities())||void 0===n?void 0:n.pos)||0,restDelta:1,restSpeed:1}).from({pos:D}).to({pos:a(k,D,N)}).start()})).on("move",(e=>{const{srcEvent:t,axis:n}=e,o=e.srcEvent.target;o&&i(o)||(n||(t.stopPropagation(),t.stopImmediatePropagation()),("y"===n&&$||"x"===n&&!$)&&(m(t),t.stopPropagation()))})).on("panstart",(e=>{(null==e?void 0:e.axis)===($?"y":"x")&&c(C,"is-dragging")})).on("panend",(()=>{d(C,"is-dragging")})).on("pan",(e=>{var t;const{deltaX:n,deltaY:i,currentTouch:o,axis:s}=e;if(!w)return;if(o.length>1)return;if("y"===s&&!$||"x"===s&&$)return;const r=V&&!$?1:-1;let l=$?i:n,a=(null==w?void 0:w.isRunning())?w.getEndValues().pos:D,c=1;H||(a<=k&&l*r<0?(c=Math.max(.01,1-Math.abs(1/ae()*Math.abs(a-k))),c*=.2):a>=N&&l*r>0&&(c=Math.max(.01,1-Math.abs(1/ae()*Math.abs(a-N))),c*=.2)),a+=l*c*r,w.spring({clamp:!0,mass:1,tension:700,friction:25,velocity:(null===(t=w.getCurrentVelocities())||void 0===t?void 0:t.pos)||0,restDelta:1,restSpeed:1}).from({pos:D}).to({pos:a}).start()})).on("end",(e=>{var t,n;const{axis:i,velocityX:o,velocityY:s,currentTouch:r}=e,l=Y.length,c=Q("dragFree");if(r.length>0||!w)return;if(!l)return;const d=Q("vertical")?s:o;let u=(null==w?void 0:w.isRunning())?w.getEndValues().pos:D;const f=V&&!$?1:-1;if(u+=d*(c?5:1)*f,!H&&(d*f<=0&&u<k||d*f>=0&&u>N)){let e=0;return Math.abs(d)>0&&(e=2*Math.abs(d),e=Math.min(.3*ae(),e)),u=a(k+-1*e,u,N+e),void w.spring({clamp:!0,mass:1,tension:380,friction:25,velocity:-1*d,restDelta:1,restSpeed:1}).from({pos:D}).to({pos:u}).start()}if(c||(null===(t=R.Autoscroll)||void 0===t?void 0:t.isEnabled()))return void(Math.abs(d)>10?w.spring({clamp:!0,mass:1,tension:150,friction:25,velocity:-1*d,restDelta:1,restSpeed:1}).from({pos:D}).to({pos:u}).start():w.isRunning()||F||(F=!0,Z("settle")));if(!c&&!(null===(n=R.Autoscroll)||void 0===n?void 0:n.isEnabled())&&(!e.offsetX&&!e.offsetY||"y"===i&&!$||"x"===i&&$))return void Se(q,{transition:"tween"});let p=re(u);Math.abs(d)>10&&p===q&&(p+=d>0?V&&!$?1:-1:V&&!$?-1:1),Se(p,{transition:"tween",tween:{tension:160,friction:25,velocity:-1*d}})})).init())}(),ge(),function(){if(A&&(A.addEventListener("click",ye,{passive:!1}),document.addEventListener("mousemove",te),!S)){let e=null;S=new ResizeObserver((t=>{e||(e=requestAnimationFrame((()=>{!function(e){if(!A)return;let t=e[0].contentBoxSize[0].blockSize,n=e[0].contentBoxSize[0].inlineSize;if(0===P)return J=t,K=n,P=1,je(),oe(),void Z("ready");if(1!==P)return;const i=Y.length;ge();const o=A.getBoundingClientRect();t=o.height,n=o.width,i>1&&($&&Math.abs(t-J)<.5||!$&&Math.abs(n-K)<.5)||(J=t,K=n,$&&!t||!$&&!n||A&&C&&(i===Y.length&&((null==x?void 0:x.isPointerDown())||Q("dragFree")&&(null==w?void 0:w.isRunning()))||Se(q,{transition:!1})))}(t),e=null})))})),S.observe(A)}}())}}function te(e){h=e}function ne(e="*"){var t;const n=[];for(const i of _)("*"===e||i.class&&i.class.includes(e)||i.el&&(null===(t=i.el)||void 0===t?void 0:t.classList.contains(e)))&&n.push(i);j=void 0,B=e,G=[...n]}function ie(){if(!w)return;const e=re((null==w?void 0:w.isRunning())?w.getEndValues().pos:D);e!==q&&(j=q,q=e,we(),oe(),se(),Z("change",q,j))}function oe(){var e;if(!A)return;u(C,"is-draggable",!!x&&Y.length>0);for(const e of A.querySelectorAll("[data-carousel-index]"))e.innerHTML=q+"";for(const e of A.querySelectorAll("[data-carousel-page]"))e.innerHTML=q+1+"";for(const e of A.querySelectorAll("[data-carousel-pages]"))e.innerHTML=Y.length+"";let t=!1;const n=null===(e=Y[q])||void 0===e?void 0:e.slides[0];n&&(n.downloadSrc||"image"===n.type&&n.src)&&(t=!0);for(const e of A.querySelectorAll("[data-carousel-download]"))e.toggleAttribute("aria-disabled",!t)}function se(e){var t;if(!A)return;e||(e=null===(t=Y[q])||void 0===t?void 0:t.slides[0]);const n=e.el;if(n)for(const t of n.querySelectorAll("[data-slide-index]"))t.innerHTML=e.index+1+""}function re(e){if(!Y.length||!w)return 0;const t=ce();let n=e;H?n-=Math.floor((e-Y[0].pos)/t)*t:n=a(Y[0].pos,e,Y[Y.length-1].pos);const i=new Map;let o=0;for(const e of Y){const s=Math.abs(e.pos-n),r=Math.abs(e.pos-n-t),l=Math.abs(e.pos-n+t),a=Math.min(s,r,l);i.set(o,a),o++}const s=i.size>0?[...i.entries()].reduce(((e,t)=>t[1]<e[1]?t:e)):[q,0];return parseInt(s[0])}function le(){return C&&parseFloat(getComputedStyle(C).getPropertyValue("--f-carousel-gap"))||0}function ae(){return C&&C.getBoundingClientRect()[z]||0}function ce(e=!0){const t=le();return G.reduce(((e,t)=>e+t.dim),0)+(G.length-(H&&e?0:1))*t}function de(e,t){const n=[];for(const t of Array.isArray(e)?e:[e]){const e=ue(Object.assign(Object.assign({},t),{isVirtual:!0}));n.push(e)}_.splice(void 0===t?_.length:t,0,...n),me();for(const e of n)fe(e);return ne(B),n}function ue(e){return(n(e)||e instanceof HTMLElement)&&(e={html:e}),Object.assign({index:-1,el:void 0,class:"",isVirtual:!0,dim:0,pos:0,offset:0,html:"",src:""},e)}function fe(e){if(!e)return;let t=e.el;t||(t=document.createElement("div"),e.el=t);const n=e.html?e.html instanceof HTMLElement?e.html:l(e.html):void 0;n&&(c(n,"f-html"),e.htmlEl=n,c(t,"has-html"),t.append(n),Z("contentReady",e))}function pe(e){if(!C||!e)return;let t=e.el;if(t){if(t.setAttribute("index",e.index+""),t.parentElement!==C){let n;c(t,O.classes.slide),c(t,e.class),we(e);for(const t of _)if(t.index>e.index){n=t.el;break}C.insertBefore(t,n&&C.contains(n)?n:null),oe(),se(e),Z("attachSlideEl",e)}return t}}function ve(e){const t=null==e?void 0:e.el;t&&(t.remove(),he(t),Z("detachSlideEl",e))}function me(){for(let e=0;e<_.length;e++){const t=_[e],n=t.el;n&&(t.index!==e&&he(n),n.setAttribute("index",`${e}`)),t.index=e}}function ge(){var e,n,i,o;if(!A||!C)return;V=Q("rtl"),$=Q("vertical"),z=$?"height":"width";const s=Q("classes");u(A,s.isLTR,!V),u(A,s.isRTL,V),u(A,s.isHorizontal,!$),u(A,s.isVertical,$),u(A,s.hasAdaptiveHeight,Q("adaptiveHeight"));const r=function(){let e=0;if(C){let t=document.createElement("div");c(t,O.classes.slide),C.appendChild(t),e=t.getBoundingClientRect()[z],t.remove(),t=void 0}return e}();for(const n of G){const i=n.el;let o=0;if(!n.isVirtual&&i&&t(i)){let t=!1;i.parentElement&&i.parentElement===C||(C.appendChild(i),t=!0),o=i.getBoundingClientRect()[z],t&&(null===(e=i.parentElement)||void 0===e||e.removeChild(i))}else o=r;n.dim=o}if(function(){if(!A)return;me();const e=ae(),t=le(),n=ce(!1);let i=Q("slidesPerPage");i="auto"===i?1/0:parseFloat(i+""),Y=[];let o=0,s=0;for(const n of G)(!Y.length||o+n.dim-e>.05||s>=i)&&(Y.push({index:Y.length,slides:[],dim:0,offset:0,pos:0}),o=0,s=0),Y[Y.length-1].slides.push(n),o+=n.dim+t,s++;const r=Q("center"),l=Q("fill"),c=Q("infinite");let d=0;for(const i of Y){i.dim=(i.slides.length-1)*t;for(const e of i.slides)i.dim+=e.dim;i.offset=d,i.pos=d,!1!==r&&(i.pos-=.5*(e-i.dim)),l&&!c&&n>e&&(i.pos=a(0,i.pos,n-e)),d+=i.dim+t}const u=[];let f;for(const e of Y){const t=Object.assign({},e);f&&t.pos===f.pos?(f.dim+=t.dim,f.slides=[...f.slides,...t.slides]):(f=t,t.index=u.length,u.push(t))}Y=u}(),H=Q("infinite")&&Y.length>1&&ce()-(ae()+((null===(n=G[0])||void 0===n?void 0:n.dim)||0))>-.5,k=(null===(i=Y[0])||void 0===i?void 0:i.pos)||0,N=(null===(o=Y[Y.length-1])||void 0===o?void 0:o.pos)||0,0===P)!function(){var e;j=void 0,q=Q("initialPage");const t=Q("initialSlide")||void 0;void 0!==t&&(q=Pe.getPageIndex(t)||0),q=a(0,q,Y.length-1),D=(null===(e=Y[q])||void 0===e?void 0:e.pos)||0,I=D}();else{const e=(null==w?void 0:w.isRunning())?w.getEndValues().pos:D;(e<k||e>N)&&(q=a(0,q,Y.length-1))}Z("refresh")}function he(e){if(!e||!t(e))return;const n=parseInt(e.getAttribute("index")||"-1");let i="";for(const t of Array.from(e.classList)){const e=t.match(/^f-(\w+)(Out|In)$/);e&&e[1]&&(i=e[1]+"")}if(!e||!i)return;const o=[`f-${i}Out`,`f-${i}In`,"to-prev","to-next","from-prev","from-next"];e.removeEventListener("animationend",Ee),d(e,o.join(" ")),X.delete(n)}function be(){if(!C)return;const e=X.size;for(const e of G)he(e.el);X.clear(),e&&je()}function Ee(e){"f-"===e.animationName.substring(0,2)&&(he(e.target),X.size||(d(A,"in-transition"),!F&&Math.abs(Pe.getPosition(!0)-I)<.5&&(F=!0,Z("settle"))),je())}function ye(e){if(e.defaultPrevented)return;const t=e.composedPath()[0];if(t.closest("[data-carousel-go-prev]"))return m(e),void Pe.prev();if(t.closest("[data-carousel-go-next]"))return m(e),void Pe.next();const n=t.closest("[data-carousel-go-to]");if(n)return m(e),void Pe.goTo(parseFloat(n.dataset.carouselGoTo||"")||0);if(t.closest("[data-carousel-download]")){m(e);const t=Y[q].slides[0];if(t.downloadSrc||"image"===t.type&&t.src){const e=t.downloadFilename,n=document.createElement("a");n.href=t.downloadSrc||t.src||"",n.target="_blank",e&&(n.download=e),n.click()}}else Z("click",e)}function Me(e){var t;const n=e.el;n&&(null===(t=n.querySelector(".f-spinner"))||void 0===t||t.remove(),d(n,"is-loading"))}function xe(e){var t;const n=e.el;n&&(null===(t=n.querySelector(".f-html.is-error"))||void 0===t||t.remove(),d(n,"has-error"))}function we(e){var t;e||(e=null===(t=Y[q])||void 0===t?void 0:t.slides[0]);const i=null==e?void 0:e.el;if(!i)return;let o=Q("formatCaption",e);void 0===o&&(o=e.caption),o=o||"";const s=Q("captionEl");if(s&&s instanceof HTMLElement){if(e.index!==q)return;if(n(o)&&(s.innerHTML=U(o+"")),o instanceof HTMLElement){if(o.parentElement===s)return;s.innerHTML="",o.parentElement&&(o=o.cloneNode(!0)),s.append(o)}return}if(!o)return;let r=e.captionEl||i.querySelector(".f-caption");!r&&o instanceof HTMLElement&&o.classList.contains("f-caption")&&(r=o),r||(r=document.createElement("div"),c(r,"f-caption"),n(o)?r.innerHTML=U(o+""):o instanceof HTMLElement&&(o.parentElement&&(o=o.cloneNode(!0)),r.append(o)));const l=`f-caption-${b}_${e.index}`;r.setAttribute("id",l),r.dataset.selectable="true",c(i,"has-caption"),i.setAttribute("aria-labelledby",l),e.captionEl=r,i.insertAdjacentElement("beforeend",r)}function Se(t,i){let{transition:o,tween:s}=Object.assign({transition:O.transition,tween:O.tween},i||{});if(!A||!w)return;const r=Y.length;if(!r)return;if(function(e,t){var i,o,s;if(!(A&&w&&t&&n(t)&&"tween"!==t))return!1;const r=Y.length;let l=e>q?1:-1;e=H?(e%r+r)%r:a(0,e,r-1),V&&(l*=-1);const u=null===(i=Y[q])||void 0===i?void 0:i.slides[0],f=null==u?void 0:u.index,p=null===(o=Y[e])||void 0===o?void 0:o.slides[0],v=null==p?void 0:p.index,m=null===(s=Y[e])||void 0===s?void 0:s.pos;if(void 0===v||void 0===f||f===v||D===m||Math.abs(ae()-((null==p?void 0:p.dim)||0))>1)return!1;F=!1,w.pause(),be(),c(A,"in-transition"),D=I=m,ie();const g=pe(u),h=pe(p);return g&&(X.add(f),g.style.transform="",g.addEventListener("animationend",Ee),d(g,O.classes.isSelected),c(g,`f-${t}Out to-${l>0?"next":"prev"}`)),h&&(X.add(v),h.style.transform="",h.addEventListener("animationend",Ee),c(h,O.classes.isSelected),c(h,`f-${t}In from-${l>0?"prev":"next"}`)),je(),!0}(t,o))return;t=H?(t%r+r)%r:a(0,t,r-1),I=Y[t||0].pos||0;const l=w.isRunning()?w.getEndValues().pos:D;if(Math.abs(I-l)<1)return D=I,q!==t&&(we(),oe(),se(),j=q,q=t,Z("change",q,j)),je(),void(F||(F=!0,Z("settle")));if(w.pause(),be(),H){const e=ce(),t=Math.floor((l-Y[0].pos)/e),n=I+t*e;I=[n+e,n,n-e].reduce((function(e,t){return Math.abs(t-l)<Math.abs(e-l)?t:e}))}!1!==o&&e(s)?w.spring(s).from({pos:D}).to({pos:I}).start():(D=I,ie(),je(),F||(F=!0,Z("settle")))}function je(){var e;if(!A||!C)return;const t=Y[q],n=function(e){const t=le(),n=ce(),i=ae(),o=[];if(!n||!i)return o;e=void 0===e?D:e,H&&(e-=Math.floor(e/n)*n);let s=0,r=0,l=0;do{for(let n of G)o.indexOf(n)>-1||(n.offset=r,n.pos=r-e,n.offset+n.dim>e+.51&&n.offset<e+i-.51&&o.push(n),r+=n.dim+t,s=e+i-((n.pos||0)+n.dim+t));if(l++,l>100||!H)break}while(s>0&&n>0);return o}(),i=new Set,s=new Set;let l;for(const o of n){let n=pe(o);if(!n)continue;i.add(n);const a=(null===(e=null==t?void 0:t.slides)||void 0===e?void 0:e.indexOf(o))>-1;a&&s.add(n);const c=o.pos?Math.round(1e4*o.pos)/1e4:0,d=$?0:V?-1*c:c,u=$?c:0,f=r(d,0,o.dim,0,100),p=r(u,0,o.dim,0,100),v=O.setTransform||void 0;if(v instanceof Function?v(Pe,o,{x:d,y:u,xPercent:f,yPercent:p}):n.style.transform=d||u?`translate3d(${f}%, ${p}%,0)`:"",Q("adaptiveHeight")&&!$&&a){const e=(n.firstElementChild||n).getBoundingClientRect().height;l=null==l?e:Math.max(l,e)}}[...o(C,`.${O.classes.slide}`)].forEach((e=>{const t=parseInt(e.getAttribute("index")||"-1"),n=_[t];n||e.remove(),u(e,O.classes.isSelected,s.has(e)),X.has(t)||i.has(e)||ve(n)})),C&&void 0!==l&&(C.style.height=`${l}px`),Z("render",n)}function Le(){var e;null==A||A.removeEventListener("click",ye),be(),document.removeEventListener("mousemove",te),null==S||S.disconnect(),S=void 0;for(const e of Object.values(R))null==e||e.destroy();R={};for(const n of _)n.el&&t(n.el)&&(n.state=void 0,Me(n),xe(n),ve(n),n.isVirtual?(null===(e=n.el)||void 0===e||e.remove(),n.el=void 0):(n.el.style.transform="",null==C||C.appendChild(n.el)));null==x||x.destroy(),x=void 0,null==w||w.destroy(),w=void 0;for(const e of Object.values(O.classes||{}))d(A,e);d(C,"is-draggable")}const Pe={add:function(e,t){const n=de(e,t);for(const e of n)Z("addSlide",e);return ne(B),ge(),je(),Pe},canGoPrev:function(){return H||q>0},canGoNext:function(){return H||q<Y.length-1},destroy:function(){return Z("destroy"),window.removeEventListener("resize",ee),Le(),W.clear(),A=null,Y=[],_=[],O=Object.assign({},g),R={},G=[],L="",B="*",P=2,Pe},emit:Z,filter:function(e="*"){return ne(e),ge(),je(),Z("filter",e),Pe},getContainer:function(){return A},getGapDim:le,getGestures:function(){return x},getLastMouseMove:function(){return h},getOptions:function(){return O},getPage:function(){return Y[q]},getPageIndex:function(e){if(void 0!==e){for(const t of Y||[])for(const n of t.slides)if(n.index===e)return t.index;return-1}return q},getPageProgress:function(e,t){void 0===e&&(e=q);const n=Y[e];if(!n)return e>q?-1:1;let i=n.pos;const o=le(),s=Pe.getPosition(),r=ce();if(H&&!0!==t){const e=i+r*Math.floor((s-Y[0].pos)/r);i=[e+r,e,e-r].reduce((function(e,t){return Math.abs(t-s)<Math.abs(e-s)?t:e}))}return(s-i)/(n.dim+o)},getPageVisibility:function(e){void 0===e&&(e=q);const t=Y[e];if(!t)return e>q?-1:1;const n=Pe.getPosition(),i=ae();let o=t.pos;if(H){const e=Pe.getPosition(),t=ce(),n=o+Math.floor((e-Y[0].pos)/t)*t;o=[n+t,n,n-t].reduce((function(t,n){return Math.abs(n-e)<Math.abs(t-e)?n:t}))}return o>n&&o+t.dim<n+i?1:o<n?(o+t.dim-n)/t.dim:o+t.dim>n+i?(n+i-o)/t.dim:0},getPages:function(){return Y},getPlugins:function(){return R},getPosition:function(e){var t;let n=D;if(H&&!0!==e){const e=ce();n-=Math.floor((D-(null===(t=Y[0])||void 0===t?void 0:t.pos)||0)/e)*e}return n},getSlides:function(){return _},getState:function(){return P},getTotalSlideDim:ce,getTween:function(){return w},getViewport:function(){return C},getViewportDim:ae,goTo:Se,hasNavigated:function(){return void 0!==j},hideError:xe,hideLoading:Me,init:function(){if(!v||!t(v))throw new Error("No Element found");return 0!==P&&(Le(),P=0),A=v,T=y,window.removeEventListener("resize",ee),T.breakpoints&&window.addEventListener("resize",ee),ee(),Pe},isInfinite:function(){return H},isInTransition:function(){return X.size>0},isRTL:function(){return V},isSettled:function(){return F},localize:function(e,t=[]){return U(e,t)},next:function(e={}){return Se(q+1,e),Pe},off:function(e,t){for(const n of e instanceof Array?e:[e])W.has(n)&&W.set(n,W.get(n).filter((e=>e!==t)));return Pe},on:function(e,t){for(const n of e instanceof Array?e:[e])W.set(n,[...W.get(n)||[],t]);return Pe},prev:function(e={}){return Se(q-1,e),Pe},remove:function(e){void 0===e&&(e=_.length-1);const t=_[e];return t&&(Z("removeSlide",t),t.el&&(he(t.el),t.el.remove(),t.el=void 0),_.splice(e,1),ne(B),ge(),je()),Pe},setPosition:function(e){D=e,ie(),je()},showError:function(e,t){Me(e),xe(e);const n=e.el;if(n){const i=document.createElement("div");c(i,"f-html"),c(i,"is-error"),i.innerHTML=U(t||"<p>{{ERROR}}</p>"),e.htmlEl=i,c(n,"has-html"),c(n,"has-error"),n.insertAdjacentElement("afterbegin",i),Z("contentReady",e)}return Pe},showLoading:function(e){const t=e.el,n=null==t?void 0:t.querySelector(".f-spinner");if(!t||n)return Pe;const i=Q("spinnerTpl"),o=l(i);return o&&(c(o,"f-spinner"),c(t,"is-loading"),t.insertAdjacentElement("beforeend",o)),Pe},version:"6.0.5"};return Pe};E.l10n={en_EN:v},E.getDefaults=()=>g;export{E as Carousel};