/*!
 * Custom elements for Nanopore-Digital Web applications
 */
import{F as t,u as i}from"./nano-slides-DAQ7BI02.js";import"./index-BM3Om9WE.js";import"./renderer-DpNDfhNy.js";const s=t.Slide,h=s.prototype.updateTarget;s.prototype.updateTarget=function(...t){if(h.apply(this,t),!this.parent.options.fade)return;const i=this.target-this.x,s=this.cells[0].x;this.cells.forEach((function(t){t.renderPosition(t.x-s-i)}))},s.prototype.setOpacity=function(t){this.cells.forEach((function(i){i.element.style.opacity=t}))};const n=t.prototype;t.createMethods.push("_createFade"),n._createFade=function(){this.fadeIndex=this.selectedIndex,this.prevSelectedIndex=this.selectedIndex,this.on("select",this.onSelectFade),this.on("dragEnd",this.onDragEndFade),this.on("settle",this.onSettleFade),this.on("activate",this.onActivateFade),this.on("deactivate",this.onDeactivateFade)};const o=n.updateSlides;n.updateSlides=function(...t){o.apply(this,t),this.options.fade&&this.slides.forEach((function(t,i){t.setOpacity(i==this.selectedIndex?1:0)}),this)},n.onSelectFade=function(){this.fadeIndex=Math.min(this.prevSelectedIndex,this.slides.length-1),this.prevSelectedIndex=this.selectedIndex},n.onSettleFade=function(){delete this.didDragEnd,this.options.fade&&(this.selectedSlide.setOpacity(1),this.slides[this.fadeIndex]&&this.fadeIndex!=this.selectedIndex&&this.slides[this.fadeIndex].setOpacity(0))},n.onDragEndFade=function(){this.didDragEnd=!0},n.onActivateFade=function(){this.options.fade&&this.element.classList.add("is-fade")},n.onDeactivateFade=function(){this.options.fade&&(this.element.classList.remove("is-fade"),this.slides.forEach((function(t){t.setOpacity("")})))};const c=n.positionSlider;n.positionSlider=function(...t){this.options.fade?(this.fadeSlides(),this.dispatchScrollEvent()):c.apply(this,t)};const u=n.positionSliderAtSelected;n.positionSliderAtSelected=function(...t){this.options.fade&&this.setTranslateX(0),u.apply(this,t)},n.fadeSlides=function(){if(this.slides.length<2)return;const t=this.getFadeIndexes(),i=this.slides[t.a],s=this.slides[t.b],h=this.wrapDifference(i.target,s.target);let n=this.wrapDifference(i.target,-this.x);n/=h,i.setOpacity(1-n),s.setOpacity(n);let o=t.a;this.isDragging&&(o=n>.5?t.a:t.b),null!=this.fadeHideIndex&&this.fadeHideIndex!=o&&this.fadeHideIndex!=t.a&&this.fadeHideIndex!=t.b&&this.slides[this.fadeHideIndex].setOpacity(0),this.fadeHideIndex=o},n.getFadeIndexes=function(){return this.isDragging||this.didDragEnd||void 0===this.fadeIndex?this.options.wrapAround?this.getFadeDragWrapIndexes():this.getFadeDragLimitIndexes():{a:this.fadeIndex,b:this.selectedIndex}},n.getFadeDragWrapIndexes=function(){const t=this.slides.map((function(t,i){return this.getSlideDistance(-this.x,i)}),this),s=t.map((function(t){return Math.abs(t)})),h=Math.min(...s),n=s.indexOf(h);return{a:n,b:i.modulo(n+(t[n]>=0?1:-1),this.slides.length)}},n.getFadeDragLimitIndexes=function(){let t=0;for(let i=0;i<this.slides.length-1&&!(-this.x<this.slides[i].target);i++)t=i;return{a:t,b:t+1}},n.wrapDifference=function(t,i){let s=i-t;if(!this.options.wrapAround)return s;const h=s+this.slideableWidth,n=s-this.slideableWidth;return Math.abs(h)<Math.abs(s)&&(s=h),Math.abs(n)<Math.abs(s)&&(s=n),s};const e=n._getWrapShiftCells;n._getWrapShiftCells=function(...t){this.options.fade||e.apply(this,t)};const f=n.shiftWrapCells;n.shiftWrapCells=function(...t){this.options.fade||f.apply(this,t)}