aptechka 0.94.6 → 0.95.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/lib/{Animation-DwOegoQA.js → Animation-D5bhzxA5.js} +2 -2
- package/lib/Animation-WtDiwPFQ.cjs +1 -0
- package/lib/Damped-B8unWaEn.cjs +1 -0
- package/lib/{Damped-m3PWu4LD.js → Damped-BZrSNeI7.js} +2 -2
- package/lib/Damped-BxBI6Dds.js +50 -0
- package/lib/Damped-DTVkIAqc.cjs +1 -0
- package/lib/{DerivedArray-CP3QiK6l.cjs → DerivedArray-0qZFAKZ4.cjs} +1 -1
- package/lib/{DerivedArray-DT9yLVm3.js → DerivedArray-BKdK5OWE.js} +1 -1
- package/lib/DragControls-CqNPYkc2.cjs +1 -0
- package/lib/{DragControls-DSG2Orh3.js → DragControls-DDFMqZg4.js} +5 -3
- package/lib/LocalLinks-5-30Z1lF.cjs +1 -0
- package/lib/{LocalLinks-BjyGjtxD.js → LocalLinks-D9RhyFMf.js} +1 -2
- package/lib/{PageAnnouncerElement-Bqbv_gWM.js → PageAnnouncerElement-CI048qxO.js} +2 -2
- package/lib/PageAnnouncerElement-DreveHSN.cjs +1 -0
- package/lib/{PageScroll-DgTMhV1L.js → PageScroll-CrYJVAHA.js} +1 -2
- package/lib/PageScroll-xuHDTIoC.cjs +1 -0
- package/lib/ScrollNavigator-CNKI1Iae.cjs +1 -0
- package/lib/ScrollNavigator-CiZjoiyk.js +83 -0
- package/lib/{SourceElement-DNEy09VX.js → SourceElement-BMinosvj.js} +13 -11
- package/lib/SourceElement-D9iTbecT.cjs +5 -0
- package/lib/Store-BP8tuWzQ.cjs +1 -0
- package/lib/{Store-CAGUSjFX.js → Store-LDYxlJNu.js} +7 -99
- package/lib/Tweened-9ATB544_.js +118 -0
- package/lib/{Tweened-CZeS3EqK.js → Tweened-BAR8oYF3.js} +3 -39
- package/lib/Tweened-BNb6DQ39.cjs +1 -0
- package/lib/Tweened-FpbbJ3xC.cjs +1 -0
- package/lib/Viewport-BdFs1Zsn.cjs +1 -0
- package/lib/{Viewport-B3kVX27H.js → Viewport-CPB14lI1.js} +3 -2
- package/lib/accordion/index.cjs +1 -1
- package/lib/accordion/index.js +2 -2
- package/lib/animation/index.cjs +1 -1
- package/lib/animation/index.js +3 -3
- package/lib/animation-kit/AnimationStore.d.ts +22 -0
- package/lib/animation-kit/Damped.d.ts +14 -0
- package/lib/animation-kit/Spring.d.ts +67 -0
- package/lib/animation-kit/Tweened.d.ts +15 -0
- package/lib/animation-kit/index.cjs +1 -0
- package/lib/animation-kit/index.d.ts +4 -0
- package/lib/animation-kit/index.js +119 -0
- package/lib/api-fetcher/index.cjs +1 -1
- package/lib/api-fetcher/index.d.ts +1 -1
- package/lib/api-fetcher/index.js +5 -6
- package/lib/attribute/index.cjs +1 -1
- package/lib/attribute/index.js +3 -2
- package/lib/billboard/index.cjs +1 -1
- package/lib/billboard/index.js +2 -2
- package/lib/browser-B9QXFVgG.js +4 -0
- package/lib/browser-CIp8NsnF.cjs +1 -0
- package/lib/canvas/index.cjs +1 -1
- package/lib/canvas/index.js +3 -3
- package/lib/connector/index.cjs +1 -1
- package/lib/connector/index.js +1 -1
- package/lib/controls/index.cjs +1 -1
- package/lib/controls/index.js +1 -1
- package/lib/css-property/index.cjs +1 -1
- package/lib/css-property/index.js +2 -2
- package/lib/css-value-parser/index.cjs +1 -1
- package/lib/css-value-parser/index.js +1 -1
- package/lib/dev/index.cjs +1 -1
- package/lib/dev/index.js +2 -2
- package/lib/device/index.cjs +1 -1
- package/lib/device/index.js +1 -1
- package/lib/easings-Bgvyia2r.cjs +1 -0
- package/lib/easings-D9LNSyOP.js +41 -0
- package/lib/element-linked-store/index.cjs +1 -1
- package/lib/element-linked-store/index.d.ts +1 -1
- package/lib/element-linked-store/index.js +7 -4
- package/lib/element-resizer/index.cjs +1 -1
- package/lib/element-resizer/index.js +2 -2
- package/lib/en3/index.cjs +2 -2
- package/lib/en3/index.js +1 -2
- package/lib/iframe/index.cjs +1 -1
- package/lib/iframe/index.js +4 -3
- package/lib/image/index.cjs +1 -1
- package/lib/image/index.js +5 -4
- package/lib/index-BrasTsja.cjs +1 -0
- package/lib/{index-DAG0CtYo.js → index-Z2Lgb7xU.js} +73 -73
- package/lib/intersector/index.cjs +1 -1
- package/lib/intersector/index.js +2 -2
- package/lib/jsx/index.cjs +1 -1
- package/lib/jsx/index.js +6 -5
- package/lib/ladder/index.cjs +1 -1
- package/lib/ladder/index.js +1 -1
- package/lib/layout-box/index.cjs +1 -1
- package/lib/layout-box/index.js +2 -2
- package/lib/loading/index.cjs +1 -1
- package/lib/loading/index.js +1 -2
- package/lib/local-links/LocalLinks.d.ts +3 -2
- package/lib/local-links/index.cjs +1 -1
- package/lib/local-links/index.js +1 -1
- package/lib/masonry-layout/index.cjs +1 -1
- package/lib/masonry-layout/index.js +3 -3
- package/lib/media/index.cjs +1 -1
- package/lib/media/index.js +1 -1
- package/lib/morph/Morph.d.ts +3 -2
- package/lib/morph/index.cjs +1 -1
- package/lib/morph/index.js +5 -4
- package/lib/need_redo_tweaker/index.cjs +3 -3
- package/lib/need_redo_tweaker/index.js +5 -3
- package/lib/notched/index.cjs +2 -2
- package/lib/notched/index.js +2 -2
- package/lib/page-announcer/index.cjs +1 -1
- package/lib/page-announcer/index.js +1 -1
- package/lib/page-scroll/index.cjs +1 -1
- package/lib/page-scroll/index.js +1 -1
- package/lib/pixel-perfect/index.cjs +1 -1
- package/lib/pixel-perfect/index.js +2 -3
- package/lib/pointer/index.cjs +1 -1
- package/lib/pointer/index.js +4 -3
- package/lib/popover/index.cjs +1 -1
- package/lib/popover/index.js +9 -9
- package/lib/radio/index.cjs +1 -1
- package/lib/radio/index.js +1 -2
- package/lib/render-C3udrJln.cjs +1 -0
- package/lib/{render-q67wh8Lw.js → render-D_MhEAJB.js} +4 -3
- package/lib/router/index.cjs +1 -1
- package/lib/router/index.js +5 -6
- package/lib/scroll/index.cjs +1 -1
- package/lib/scroll/index.js +9 -7
- package/lib/scroll-kit/ScrollNavigator.d.ts +17 -0
- package/lib/scroll-kit/SmoothScrollElement.d.ts +9 -8
- package/lib/scroll-kit/index.cjs +1 -1
- package/lib/scroll-kit/index.d.ts +2 -1
- package/lib/scroll-kit/index.js +151 -163
- package/lib/sequence/index.cjs +1 -1
- package/lib/sequence/index.js +4 -3
- package/lib/size-element/index.cjs +1 -1
- package/lib/size-element/index.js +2 -2
- package/lib/slicer/index.cjs +1 -1
- package/lib/slicer/index.js +2 -2
- package/lib/source/index.cjs +1 -1
- package/lib/source/index.js +1 -1
- package/lib/spa/index.cjs +1 -1
- package/lib/spa/index.js +6 -6
- package/lib/store/Store.d.ts +2 -4
- package/lib/store/index.cjs +1 -1
- package/lib/store/index.js +4 -4
- package/lib/string-Bx5N38JG.cjs +1 -0
- package/lib/string-Ct-dy_cs.js +90 -0
- package/lib/stylesheet-B-bI1cZ3.cjs +1 -0
- package/lib/{stylesheet-GIzIJ_Xj.js → stylesheet-BUUjDCDf.js} +2 -1
- package/lib/subtree-observer/index.cjs +1 -1
- package/lib/subtree-observer/index.js +1 -2
- package/lib/ticker/index.cjs +1 -1
- package/lib/ticker/index.js +2 -2
- package/lib/utils/index.cjs +1 -1
- package/lib/utils/index.d.ts +0 -1
- package/lib/utils/index.js +104 -106
- package/lib/video/index.cjs +1 -1
- package/lib/video/index.js +5 -4
- package/lib/window-resizer/index.cjs +1 -1
- package/lib/window-resizer/index.js +2 -2
- package/lib/youtube/index.cjs +1 -1
- package/lib/youtube/index.js +5 -3
- package/package.json +9 -1
- package/lib/Animation-CS32dwF1.cjs +0 -1
- package/lib/Damped-B_mVO810.cjs +0 -1
- package/lib/DragControls-DZ0Np8yt.cjs +0 -1
- package/lib/LocalLinks-DJPhk_Gn.cjs +0 -1
- package/lib/PageAnnouncerElement-auvTbYB3.cjs +0 -1
- package/lib/PageScroll-DYsZDt3U.cjs +0 -1
- package/lib/SourceElement-CAukFvLE.cjs +0 -5
- package/lib/Store-B96mD8mD.cjs +0 -1
- package/lib/Tweened-j_TwbxEI.cjs +0 -1
- package/lib/Viewport-Blxv_yl_.cjs +0 -1
- package/lib/index-BoGx2BWX.cjs +0 -1
- package/lib/render-B5iiOqye.cjs +0 -1
- package/lib/scroll-CTDesBpj.cjs +0 -1
- package/lib/scroll-D1MT0QMY.js +0 -60
- package/lib/stylesheet-DQv6_0na.cjs +0 -1
- package/lib/utils/scroll.d.ts +0 -14
package/lib/scroll-kit/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var __defProp=Object.defineProperty,__defProps=Object.defineProperties;var __getOwnPropDescs=Object.getOwnPropertyDescriptors;var __getOwnPropSymbols=Object.getOwnPropertySymbols;var __hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable;var __typeError=msg=>{throw TypeError(msg)};var __defNormalProp=(obj,key,value)=>key in obj?__defProp(obj,key,{enumerable:!0,configurable:!0,writable:!0,value}):obj[key]=value,__spreadValues=(a,b)=>{for(var prop in b||(b={}))__hasOwnProp.call(b,prop)&&__defNormalProp(a,prop,b[prop]);if(__getOwnPropSymbols)for(var prop of __getOwnPropSymbols(b))__propIsEnum.call(b,prop)&&__defNormalProp(a,prop,b[prop]);return a},__spreadProps=(a,b)=>__defProps(a,__getOwnPropDescs(b)),__name=(target,value)=>__defProp(target,"name",{value,configurable:!0});var __accessCheck=(obj,member,msg)=>member.has(obj)||__typeError("Cannot "+msg);var __privateGet=(obj,member,getter)=>(__accessCheck(obj,member,"read from private field"),getter?getter.call(obj):member.get(obj)),__privateAdd=(obj,member,value)=>member.has(obj)?__typeError("Cannot add the same private member more than once"):member instanceof WeakSet?member.add(obj):member.set(obj,value),__privateSet=(obj,member,value,setter)=>(__accessCheck(obj,member,"write to private field"),setter?setter.call(obj,value):member.set(obj,value),value),__privateMethod=(obj,member,method)=>(__accessCheck(obj,member,"access private method"),method);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const ticker_index=require("../index-BoGx2BWX.cjs"),Store=require("../Store-B96mD8mD.cjs"),dom=require("../dom-B40i6NXw.cjs"),gestures=require("../gestures-DtYbQr49.cjs");require("construct-style-sheets-polyfill");const order_index=require("../order/index.cjs"),Damped=require("../Damped-B_mVO810.cjs"),cssProperty_index=require("../css-property/index.cjs"),Viewport=require("../Viewport-Blxv_yl_.cjs"),scrollEntries_index=require("../scroll-entries/index.cjs"),scroll=require("../scroll-CTDesBpj.cjs"),elementLinkedStore_index=require("../element-linked-store/index.cjs"),elementResizer_index=require("../element-resizer/index.cjs"),events=require("../events-UlGk63iC.cjs"),layout=require("../layout-rR4-aYTY.cjs"),loading=require("../loading-7Ju1mFST.cjs"),math=require("../math-C-knY2TL.cjs"),windowResizer_index=require("../window-resizer/index.cjs");var _scrollElement,_thumbElement,_thumbScrollSize,_limit,_isHorizontal,_activeTimeoutId,_ScrollbarElement_instances,init_fn,destroy_fn,scrollPosition_get,scrollSize_get,scrollViewportSize_get,_scrollListener,_resizeListener,_grabListener,_tickListener,_intersectionListener,_spaUpdateListener;const _ScrollbarElement=class _ScrollbarElement extends HTMLElement{constructor(){super(...arguments);__privateAdd(this,_ScrollbarElement_instances);__privateAdd(this,_scrollElement,null);__privateAdd(this,_thumbElement,null);__privateAdd(this,_thumbScrollSize,0);__privateAdd(this,_limit,0);__privateAdd(this,_isHorizontal,!1);__privateAdd(this,_activeTimeoutId);__privateAdd(this,_scrollListener,__name(()=>{this.classList.add("active"),clearTimeout(__privateGet(this,_activeTimeoutId));const position=__privateGet(this,_ScrollbarElement_instances,scrollPosition_get)/__privateGet(this,_limit)*__privateGet(this,_thumbScrollSize);__privateGet(this,_isHorizontal)?__privateGet(this,_thumbElement).style.transform=`translate3d(${position}px, 0px, 0px)`:__privateGet(this,_thumbElement).style.transform=`translate3d(0px, ${position}px, 0px)`,__privateSet(this,_activeTimeoutId,setTimeout(()=>{this.classList.remove("active")},1e3))},"#scrollListener"));__privateAdd(this,_resizeListener,__name(()=>{const barSize=__privateGet(this,_isHorizontal)?this.offsetWidth:this.offsetHeight,scrollSize=__privateGet(this,_ScrollbarElement_instances,scrollSize_get),viewportSize=__privateGet(this,_ScrollbarElement_instances,scrollViewportSize_get);__privateSet(this,_limit,scrollSize-viewportSize);let thumbSize=barSize*barSize/(__privateGet(this,_limit)+barSize);thumbSize=Math.max(thumbSize,30),__privateGet(this,_isHorizontal)?(__privateGet(this,_thumbElement).style.width=thumbSize+"px",__privateGet(this,_thumbElement).style.height="100%"):(__privateGet(this,_thumbElement).style.width="100%",__privateGet(this,_thumbElement).style.height=thumbSize+"px"),__privateSet(this,_thumbScrollSize,barSize-thumbSize),scrollSize<=viewportSize?this.style.display="none":this.style.display="block"},"#resizeListener"));__privateAdd(this,_grabListener,__name(grabEvent=>{const startValue=__privateGet(this,_ScrollbarElement_instances,scrollPosition_get),grabCursor=__privateGet(this,_isHorizontal)?grabEvent.x:grabEvent.y;gestures.setupDrag(moveEvent=>{const mult=__privateGet(this,_limit)/__privateGet(this,_thumbScrollSize),delta=(__privateGet(this,_isHorizontal)?moveEvent.x-grabCursor:moveEvent.y-grabCursor)*mult;__privateGet(this,_isHorizontal)?__privateGet(this,_scrollElement).scroll({left:startValue+delta,behavior:"instant"}):__privateGet(this,_scrollElement).scroll({top:startValue+delta,behavior:"instant"})})},"#grabListener"));__privateAdd(this,_tickListener,__name(()=>{__privateGet(this,_resizeListener).call(this)},"#tickListener"));__privateAdd(this,_intersectionListener,__name(e=>{e.isIntersecting?(ticker_index.ticker.subscribe(__privateGet(this,_tickListener),{maxFPS:5}),__privateGet(this,_tickListener).call(this)):ticker_index.ticker.unsubscribe(__privateGet(this,_tickListener))},"#intersectionListener"));__privateAdd(this,_spaUpdateListener,__name(()=>{__privateMethod(this,_ScrollbarElement_instances,destroy_fn).call(this),__privateMethod(this,_ScrollbarElement_instances,init_fn).call(this)},"#spaUpdateListener"))}connectedCallback(){__privateMethod(this,_ScrollbarElement_instances,init_fn).call(this),document.addEventListener("spaAfterUpdate",__privateGet(this,_spaUpdateListener))}disconnectedCallback(){__privateMethod(this,_ScrollbarElement_instances,destroy_fn).call(this),document.removeEventListener("spaAfterUpdate",__privateGet(this,_spaUpdateListener))}};_scrollElement=new WeakMap,_thumbElement=new WeakMap,_thumbScrollSize=new WeakMap,_limit=new WeakMap,_isHorizontal=new WeakMap,_activeTimeoutId=new WeakMap,_ScrollbarElement_instances=new WeakSet,init_fn=__name(function(){const scrollSelector=this.getAttribute("data-scroll");let scrollElement=null;scrollSelector&&(scrollSelector==="parent"?scrollElement=this.parentElement:scrollElement=document.querySelector(scrollSelector)),scrollElement||(scrollElement=dom.findScrollParentElement(this),scrollElement===document.body&&(scrollElement=window)),__privateSet(this,_isHorizontal,this.hasAttribute("horisontal"));const thumbElement=this.querySelector("[data-thumb]");scrollElement&&thumbElement&&(__privateSet(this,_scrollElement,scrollElement),__privateSet(this,_thumbElement,thumbElement),__privateGet(this,_scrollElement).addEventListener("scroll",__privateGet(this,_scrollListener)),__privateGet(this,_thumbElement).addEventListener("pointerdown",__privateGet(this,_grabListener)),ticker_index.intersector.subscribe(this.parentElement===document.body?this:this.parentElement,__privateGet(this,_intersectionListener)))},"#init"),destroy_fn=__name(function(){var _a,_b;(_a=__privateGet(this,_scrollElement))==null||_a.removeEventListener("scroll",__privateGet(this,_scrollListener)),(_b=__privateGet(this,_thumbElement))==null||_b.removeEventListener("pointerdown",__privateGet(this,_grabListener)),clearTimeout(__privateGet(this,_activeTimeoutId)),ticker_index.intersector.unsubscribe(__privateGet(this,_intersectionListener)),ticker_index.ticker.unsubscribe(__privateGet(this,_tickListener))},"#destroy"),scrollPosition_get=__name(function(){return __privateGet(this,_scrollElement)instanceof HTMLElement?__privateGet(this,_isHorizontal)?__privateGet(this,_scrollElement).scrollLeft:__privateGet(this,_scrollElement).scrollTop:__privateGet(this,_isHorizontal)?__privateGet(this,_scrollElement).scrollX:__privateGet(this,_scrollElement).scrollY},"#scrollPosition"),scrollSize_get=__name(function(){return __privateGet(this,_scrollElement)instanceof HTMLElement?__privateGet(this,_isHorizontal)?__privateGet(this,_scrollElement).scrollWidth:__privateGet(this,_scrollElement).scrollHeight:__privateGet(this,_isHorizontal)?Math.max(document.body.scrollWidth,document.documentElement.scrollWidth,document.body.offsetWidth,document.documentElement.offsetWidth,document.body.clientWidth,document.documentElement.clientWidth):Math.max(document.body.scrollHeight,document.documentElement.scrollHeight,document.body.offsetHeight,document.documentElement.offsetHeight,document.body.clientHeight,document.documentElement.clientHeight)},"#scrollSize"),scrollViewportSize_get=__name(function(){return __privateGet(this,_scrollElement)instanceof HTMLElement?__privateGet(this,_isHorizontal)?__privateGet(this,_scrollElement).offsetWidth:__privateGet(this,_scrollElement).offsetHeight:__privateGet(this,_isHorizontal)?innerWidth:innerHeight},"#scrollViewportSize"),_scrollListener=new WeakMap,_resizeListener=new WeakMap,_grabListener=new WeakMap,_tickListener=new WeakMap,_intersectionListener=new WeakMap,_spaUpdateListener=new WeakMap,__name(_ScrollbarElement,"ScrollbarElement");let ScrollbarElement=_ScrollbarElement;Store.isBrowser&&!customElements.get("e-scrollbar")&&customElements.define("e-scrollbar",ScrollbarElement);const scrollKeys=new Set(["ArrowUp","ArrowDown","ArrowLeft","ArrowRight","PageUp","PageDown","Home","End","Space"]);var _scrollElement2,_cssDisabled,_cssDamping,_value,_currentRoundedValue,_needSync,_SmoothScrollElement_instances,checkDisabled_fn,_wheelListener,_pointerdownListener,_resizeListener2,_keydownListener,_scrollListener2;const _SmoothScrollElement=class _SmoothScrollElement extends HTMLElement{constructor(){super(...arguments);__privateAdd(this,_SmoothScrollElement_instances);__privateAdd(this,_scrollElement2,this);__privateAdd(this,_cssDisabled,new cssProperty_index.CSSProperty(this,"--smooth-scroll-disabled",!1));__privateAdd(this,_cssDamping,new cssProperty_index.CSSProperty(this,"--smooth-scroll-damping",10));__privateAdd(this,_value,new Damped.Damped(0,{order:order_index.TICK_ORDER.SCROLL}));__privateAdd(this,_currentRoundedValue,0);__privateAdd(this,_needSync,!1);__privateAdd(this,_wheelListener,__name(e=>{if(!(__privateMethod(this,_SmoothScrollElement_instances,checkDisabled_fn).call(this)||Viewport.device.isMobile)){if(Math.sign(e.deltaY)<0&&__privateGet(this,_value).target===0&&__privateGet(this,_value).direction<0||Math.sign(e.deltaY)>0&&__privateGet(this,_value).target===__privateGet(this,_value).max&&__privateGet(this,_value).direction>0||e.stopPropagation(),e.target instanceof Element){const preventElement=e.target.closest("[data-prevent-smooth-scroll]");if(preventElement){const attrValue=preventElement.getAttribute("data-prevent-smooth-scroll");if(attrValue){if(matchMedia(attrValue).matches)return}else return}}Math.abs(e.deltaX)>Math.abs(e.deltaY)||(e.preventDefault(),this.shiftPosition(e.deltaY))}},"#wheelListener"));__privateAdd(this,_pointerdownListener,__name(e=>{if(e.target instanceof Element){const anchorElement=e.target.closest("a");if(e.button!==0||__privateMethod(this,_SmoothScrollElement_instances,checkDisabled_fn).call(this)&&!anchorElement)return;if(anchorElement&&!anchorElement.hasAttribute("data-smooth-scroll-skip")&&this.contains(anchorElement)){this.stop();const url=new URL(anchorElement.href);url.hash&&(e.preventDefault(),this.scrollToElement(url.hash,{behavior:anchorElement.getAttribute("data-scroll-behavior")||"smooth",offset:anchorElement.getAttribute("data-scroll-offset")||void 0,center:anchorElement.hasAttribute("data-scroll-center"),duration:parseFloat(anchorElement.getAttribute("data-scroll-duration")||"0")||void 0,easing:anchorElement.getAttribute("data-scroll-easing")||void 0}))}}},"#pointerdownListener"));__privateAdd(this,_resizeListener2,__name(()=>{this.resize(),this.sync()},"#resizeListener"));__privateAdd(this,_keydownListener,__name(e=>{__privateMethod(this,_SmoothScrollElement_instances,checkDisabled_fn).call(this)||scrollKeys.has(e.code)&&this.stop()},"#keydownListener"));__privateAdd(this,_scrollListener2,__name(()=>{Viewport.device.isMobile&&this.sync()},"#scrollListener"))}resize(){__privateGet(this,_value).min=0,__privateGet(this,_scrollElement2)instanceof HTMLElement?__privateGet(this,_value).max=__privateGet(this,_scrollElement2).scrollHeight-__privateGet(this,_scrollElement2).offsetHeight:__privateGet(this,_value).max=document.documentElement.offsetHeight-Viewport.viewport.height}stop(){var _a;(_a=scroll.scrollToElementTweened.value)==null||_a.set(this.scrollTop,{equalize:!0}),__privateGet(this,_value).unlistenAnimationFrame(),__privateSet(this,_needSync,!0)}sync(){let currentValue=0;__privateGet(this,_scrollElement2)instanceof HTMLElement?currentValue=__privateGet(this,_scrollElement2).scrollTop:currentValue=__privateGet(this,_scrollElement2).scrollY,(Viewport.device.isMobile||__privateGet(this,_needSync)||Math.abs(currentValue-__privateGet(this,_value).current)>100)&&(__privateSet(this,_needSync,!1),__privateGet(this,_value).set(currentValue,{equalize:!0}))}shiftPosition(value){this.resize(),this.sync(),__privateGet(this,_value).shift(value)}setPosition(value,options){this.resize(),this.sync(),__privateGet(this,_value).set(value,options)}scrollToValue(value,behavior){Viewport.device.isMobile?this.scroll({top:value,behavior}):this.setPosition(value,{equalize:behavior==="instant"})}scrollToElement(elementOrSelector,options){scroll.scrollToElement(elementOrSelector,__spreadProps(__spreadValues({},options),{scrollElement:__privateGet(this,_scrollElement2),startValue:__privateGet(this,_value).current,scrollCallback:__name(top=>{this.scrollToValue(top,options!=null&&options.duration?"instant":options==null?void 0:options.behavior)},"scrollCallback")}))}connectedCallback(){this.dataset.element==="window"?__privateSet(this,_scrollElement2,window):__privateSet(this,_scrollElement2,dom.getElement(this.dataset.element)||this),window.addEventListener("resize",__privateGet(this,_resizeListener2)),__privateGet(this,_scrollElement2).addEventListener("keydown",__privateGet(this,_keydownListener)),document.documentElement.addEventListener("pointerdown",__privateGet(this,_pointerdownListener)),__privateGet(this,_scrollElement2).addEventListener("wheel",__privateGet(this,_wheelListener),{passive:!1}),__privateGet(this,_scrollElement2).addEventListener("scroll",__privateGet(this,_scrollListener2)),__privateGet(this,_value).set(this.scrollTop,{equalize:!0}),__privateGet(this,_value).subscribe(e=>{const roundedCurrent=Math.round(e.current);scrollEntries_index.scrollEntries.update(this,"y",e.current),roundedCurrent!==__privateGet(this,_currentRoundedValue)&&!Viewport.device.isMobile&&__privateGet(this,_scrollElement2).scroll({top:roundedCurrent,behavior:"instant"}),document.documentElement.classList.toggle("scrolling",roundedCurrent!==__privateGet(this,_currentRoundedValue)),__privateSet(this,_currentRoundedValue,roundedCurrent)}),__privateGet(this,_cssDamping).observe(),__privateGet(this,_cssDisabled).observe(),__privateGet(this,_cssDamping).subscribe(e=>{__privateGet(this,_value).damping=e.current}),scrollEntries_index.scrollEntries.register(this),this.resize()}disconnectedCallback(){__privateGet(this,_value).close(),__privateGet(this,_cssDamping).close(),__privateGet(this,_cssDisabled).close(),scrollEntries_index.scrollEntries.unregister(this),document.documentElement.classList.remove("scrolling"),window.removeEventListener("resize",__privateGet(this,_resizeListener2)),__privateGet(this,_scrollElement2).removeEventListener("keydown",__privateGet(this,_keydownListener)),document.documentElement.removeEventListener("pointerdown",__privateGet(this,_pointerdownListener)),__privateGet(this,_scrollElement2).removeEventListener("wheel",__privateGet(this,_wheelListener)),__privateGet(this,_scrollElement2).removeEventListener("scroll",__privateGet(this,_scrollListener2))}};_scrollElement2=new WeakMap,_cssDisabled=new WeakMap,_cssDamping=new WeakMap,_value=new WeakMap,_currentRoundedValue=new WeakMap,_needSync=new WeakMap,_SmoothScrollElement_instances=new WeakSet,checkDisabled_fn=__name(function(){return __privateGet(this,_cssDisabled).current||getComputedStyle(this).getPropertyValue("overflow")==="hidden"},"#checkDisabled"),_wheelListener=new WeakMap,_pointerdownListener=new WeakMap,_resizeListener2=new WeakMap,_keydownListener=new WeakMap,_scrollListener2=new WeakMap,__name(_SmoothScrollElement,"SmoothScrollElement");let SmoothScrollElement=_SmoothScrollElement;customElements.get("e-smooth-scroll")||customElements.define("e-smooth-scroll",SmoothScrollElement);var _statusHolderElements,_progressHolderElements,_scrollElement3,_statusHolderCSSProperty,_progressHolderCSSProperty,_disabledCSSProperty,_startOffsetCSSProperty,_startOffsetMinCSSProperty,_startExtraOffsetCSSProperty,_distanceCSSProperty,_distanceOffsetCSSProperty,_progressVarCSSProperty,_enterOnceCSSProperty,_status,_initialPosition,_start,_finish,_distance,_scrolled,_progress,_visible,_loadingUnsub,_ScrollRegionElement_instances,addGlobalClasses_fn,removeGlobalClasses_fn,init_fn2,_resizeListener3,_tickListener2,enter_fn,exit_fn,cssVar_fn,_loadingListener;const _ScrollRegionElement=class _ScrollRegionElement extends HTMLElement{constructor(){super(...arguments);__privateAdd(this,_ScrollRegionElement_instances);__privateAdd(this,_statusHolderElements,[this]);__privateAdd(this,_progressHolderElements,[this]);__privateAdd(this,_scrollElement3,null);__privateAdd(this,_statusHolderCSSProperty,new cssProperty_index.CSSProperty(this,"--scroll-region-status-holder",!1));__privateAdd(this,_progressHolderCSSProperty,new cssProperty_index.CSSProperty(this,"--scroll-region-progress-holder",!1));__privateAdd(this,_disabledCSSProperty,new cssProperty_index.CSSProperty(this,"--scroll-region-disabled",!1));__privateAdd(this,_startOffsetCSSProperty,new cssProperty_index.CSSProperty(this,"--scroll-region-start-offset",0,{rawValueCheck:!1}));__privateAdd(this,_startOffsetMinCSSProperty,new cssProperty_index.CSSProperty(this,"--scroll-region-start-offset-min",!1,{rawValueCheck:!1}));__privateAdd(this,_startExtraOffsetCSSProperty,new cssProperty_index.CSSProperty(this,"--scroll-region-start-extra-offset",0,{rawValueCheck:!1}));__privateAdd(this,_distanceCSSProperty,new cssProperty_index.CSSProperty(this,"--scroll-region-distance",0,{rawValueCheck:!1}));__privateAdd(this,_distanceOffsetCSSProperty,new cssProperty_index.CSSProperty(this,"--scroll-region-distance-offset",0,{rawValueCheck:!1}));__privateAdd(this,_progressVarCSSProperty,new cssProperty_index.CSSProperty(this,"--scroll-region-progress-var",""));__privateAdd(this,_enterOnceCSSProperty,new cssProperty_index.CSSProperty(this,"--scroll-region-enter-once",!1));__privateAdd(this,_status,new elementLinkedStore_index.ElementLinkedStore(this,{enabled:!1,entered:!1,enteredOnLoad:!1,activated:!1}));__privateAdd(this,_initialPosition,0);__privateAdd(this,_start,0);__privateAdd(this,_finish,0);__privateAdd(this,_distance,0);__privateAdd(this,_scrolled,0);__privateAdd(this,_progress,0);__privateAdd(this,_visible,!1);__privateAdd(this,_loadingUnsub);__privateAdd(this,_resizeListener3,__name(()=>{this.resize()},"#resizeListener"));__privateAdd(this,_tickListener2,__name(()=>{this.tick()},"#tickListener"));__privateAdd(this,_loadingListener,__name(()=>{__privateMethod(this,_ScrollRegionElement_instances,init_fn2).call(this)},"#loadingListener"))}get start(){return __privateGet(this,_start)}get finish(){return __privateGet(this,_finish)}get distance(){return __privateGet(this,_distance)}get scrolled(){return __privateGet(this,_scrolled)}get progress(){return __privateGet(this,_progress)}get status(){return __privateGet(this,_status)}get scrollValue(){return __privateGet(this,_scrollElement3)instanceof HTMLElement?__privateGet(this,_scrollElement3).scrollTop:__privateGet(this,_scrollElement3).scrollY}resize(){__privateGet(this,_disabledCSSProperty).current||(__privateSet(this,_initialPosition,layout.getCumulativeOffsetTop(this)),__privateSet(this,_start,__privateGet(this,_initialPosition)),typeof __privateGet(this,_startOffsetMinCSSProperty).current=="number"?__privateSet(this,_start,__privateGet(this,_start)+Math.max(__privateGet(this,_startOffsetCSSProperty).current,__privateGet(this,_startOffsetMinCSSProperty).current)):__privateSet(this,_start,__privateGet(this,_start)+__privateGet(this,_startOffsetCSSProperty).current),__privateSet(this,_start,__privateGet(this,_start)+__privateGet(this,_startExtraOffsetCSSProperty).current),__privateSet(this,_start,__privateGet(this,_start)-layout.getStickyOffset(this,"top")),__privateSet(this,_finish,__privateGet(this,_start)),__privateGet(this,_distanceCSSProperty).current?__privateSet(this,_finish,__privateGet(this,_finish)+__privateGet(this,_distanceCSSProperty).current):__privateSet(this,_finish,__privateGet(this,_finish)+this.offsetHeight),__privateSet(this,_finish,__privateGet(this,_finish)+__privateGet(this,_distanceOffsetCSSProperty).current),__privateSet(this,_distance,__privateGet(this,_finish)-__privateGet(this,_start)),__privateSet(this,_visible,this.offsetWidth!==0&&this.offsetHeight!==0),this.tick())}tick(){if(__privateGet(this,_disabledCSSProperty).current)return;const scrollValue=this.scrollValue;if(__privateSet(this,_scrolled,math.clamp(scrollValue-__privateGet(this,_start),0,__privateGet(this,_distance))),__privateSet(this,_progress,__privateGet(this,_scrolled)/__privateGet(this,_distance)||0),__privateGet(this,_progressVarCSSProperty).current)for(let index=0;index<__privateGet(this,_progressHolderElements).length;index++)__privateGet(this,_progressHolderElements)[index].style.setProperty(__privateMethod(this,_ScrollRegionElement_instances,cssVar_fn).call(this,__privateGet(this,_progressVarCSSProperty).current),__privateGet(this,_progress).toFixed(6));__privateGet(this,_status).set("activated",scrollValue>=__privateGet(this,_start)),__privateGet(this,_visible)&&__privateGet(this,_status).isFalse("entered")&&scrollValue>=__privateGet(this,_start)&&scrollValue<=__privateGet(this,_finish)?__privateMethod(this,_ScrollRegionElement_instances,enter_fn).call(this):__privateGet(this,_visible)&&!__privateGet(this,_enterOnceCSSProperty).current&&__privateGet(this,_status).isTrue("entered")&&(scrollValue<__privateGet(this,_start)||scrollValue>__privateGet(this,_finish))&&__privateMethod(this,_ScrollRegionElement_instances,exit_fn).call(this),__privateGet(this,_enterOnceCSSProperty).current&&__privateGet(this,_progress)===1&&(__privateGet(this,_status).current.entered||__privateMethod(this,_ScrollRegionElement_instances,enter_fn).call(this),this.destroy()),events.dispatchEvent(this,"scrollRegionProgress",{detail:{progress:__privateGet(this,_progress),scrolled:__privateGet(this,_scrolled)}})}destroy(){var _a;(_a=__privateGet(this,_loadingUnsub))==null||_a.call(this),this.disable(!1),__privateGet(this,_statusHolderCSSProperty).close(),__privateGet(this,_progressHolderCSSProperty).close(),__privateGet(this,_disabledCSSProperty).close(),__privateGet(this,_startOffsetCSSProperty).close(),__privateGet(this,_startOffsetMinCSSProperty).close(),__privateGet(this,_startExtraOffsetCSSProperty).close(),__privateGet(this,_distanceCSSProperty).close(),__privateGet(this,_distanceOffsetCSSProperty).close(),__privateGet(this,_progressVarCSSProperty).close(),__privateGet(this,_enterOnceCSSProperty).close()}enable(){ticker_index.ticker.subscribe(__privateGet(this,_tickListener2),{culling:this.getAttribute("data-culling-element")||this}),elementResizer_index.elementResizer.subscribe(this,__privateGet(this,_resizeListener3)),windowResizer_index.windowResizer.subscribe(__privateGet(this,_resizeListener3)),__privateGet(this,_tickListener2).call(this),__privateGet(this,_status).set("enabled",!0)}disable(resetStatus=!0){ticker_index.ticker.unsubscribe(__privateGet(this,_tickListener2)),elementResizer_index.elementResizer.unsubscribe(__privateGet(this,_resizeListener3)),windowResizer_index.windowResizer.unsubscribe(__privateGet(this,_resizeListener3)),resetStatus&&__privateGet(this,_status).reset(),__privateMethod(this,_ScrollRegionElement_instances,removeGlobalClasses_fn).call(this)}connectedCallback(){const scrollSelector=this.getAttribute("data-scroll")||".page-scroll";__privateSet(this,_scrollElement3,document.querySelector(scrollSelector)),__privateSet(this,_loadingUnsub,loading.requestLoadingCallback("load",__privateGet(this,_loadingListener)))}disconnectedCallback(){this.destroy()}};_statusHolderElements=new WeakMap,_progressHolderElements=new WeakMap,_scrollElement3=new WeakMap,_statusHolderCSSProperty=new WeakMap,_progressHolderCSSProperty=new WeakMap,_disabledCSSProperty=new WeakMap,_startOffsetCSSProperty=new WeakMap,_startOffsetMinCSSProperty=new WeakMap,_startExtraOffsetCSSProperty=new WeakMap,_distanceCSSProperty=new WeakMap,_distanceOffsetCSSProperty=new WeakMap,_progressVarCSSProperty=new WeakMap,_enterOnceCSSProperty=new WeakMap,_status=new WeakMap,_initialPosition=new WeakMap,_start=new WeakMap,_finish=new WeakMap,_distance=new WeakMap,_scrolled=new WeakMap,_progress=new WeakMap,_visible=new WeakMap,_loadingUnsub=new WeakMap,_ScrollRegionElement_instances=new WeakSet,addGlobalClasses_fn=__name(function(){this.hasAttribute("data-global-class")&&document.documentElement.classList.add(this.getAttribute("data-global-class"))},"#addGlobalClasses"),removeGlobalClasses_fn=__name(function(){this.hasAttribute("data-global-class")&&document.documentElement.classList.remove(this.getAttribute("data-global-class"))},"#removeGlobalClasses"),init_fn2=__name(function(){__privateGet(this,_statusHolderCSSProperty).subscribe(e=>{__privateGet(this,_statusHolderElements).length&&__privateGet(this,_statusHolderElements).forEach(el=>{__privateGet(this,_status).removeElement(el)}),__privateSet(this,_statusHolderElements,[]),e.current?e.current.split(",").map(v=>v.trim()).forEach(selector=>{const element=document.querySelector(selector);element instanceof HTMLElement&&(__privateGet(this,_statusHolderElements).push(element),__privateGet(this,_status).addElement(element))}):(__privateSet(this,_statusHolderElements,[this]),__privateGet(this,_status).addElement(this))}),__privateGet(this,_progressHolderCSSProperty).subscribe(e=>{__privateGet(this,_progressHolderElements).length&&__privateGet(this,_progressHolderElements).forEach(el=>{el.style.removeProperty(__privateMethod(this,_ScrollRegionElement_instances,cssVar_fn).call(this,__privateGet(this,_progressVarCSSProperty).current))}),__privateSet(this,_progressHolderElements,[]),e.current?e.current.split(",").map(v=>v.trim()).forEach(selector=>{const element=document.querySelector(selector);element instanceof HTMLElement&&__privateGet(this,_progressHolderElements).push(element)}):__privateSet(this,_progressHolderElements,[this])}),__privateGet(this,_disabledCSSProperty).subscribe(e=>{e.current&&!e.previous?this.disable():this.enable()}),__privateGet(this,_progressVarCSSProperty).subscribe(e=>{e.current?__privateGet(this,_tickListener2).call(this):e.previous&&__privateGet(this,_progressHolderElements).forEach(el=>{el.style.removeProperty(__privateMethod(this,_ScrollRegionElement_instances,cssVar_fn).call(this,e.previous))})}),__privateGet(this,_distanceCSSProperty).subscribe(()=>{__privateGet(this,_resizeListener3).call(this)}),__privateGet(this,_statusHolderCSSProperty).observe(),__privateGet(this,_progressHolderCSSProperty).observe(),__privateGet(this,_disabledCSSProperty).observe(),__privateGet(this,_startOffsetCSSProperty).observe(),__privateGet(this,_startOffsetMinCSSProperty).observe(),__privateGet(this,_startExtraOffsetCSSProperty).observe(),__privateGet(this,_distanceCSSProperty).observe(),__privateGet(this,_distanceOffsetCSSProperty).observe(),__privateGet(this,_progressVarCSSProperty).observe(),__privateGet(this,_enterOnceCSSProperty).observe()},"#init"),_resizeListener3=new WeakMap,_tickListener2=new WeakMap,enter_fn=__name(function(){const scrollValue=this.scrollValue;__privateGet(this,_status).set("entered",!0),scrollValue===0&&__privateGet(this,_status).set("enteredOnLoad",!0),__privateMethod(this,_ScrollRegionElement_instances,addGlobalClasses_fn).call(this),events.dispatchEvent(this,"scrollRegionEnter")},"#enter"),exit_fn=__name(function(){__privateGet(this,_status).set("entered",!1),__privateMethod(this,_ScrollRegionElement_instances,removeGlobalClasses_fn).call(this),events.dispatchEvent(this,"scrollRegionExit")},"#exit"),cssVar_fn=__name(function(value){return`--${value}`},"#cssVar"),_loadingListener=new WeakMap,__name(_ScrollRegionElement,"ScrollRegionElement");let ScrollRegionElement=_ScrollRegionElement;customElements.get("e-scroll-region")||customElements.define("e-scroll-region",ScrollRegionElement);exports.ScrollRegionElement=ScrollRegionElement;exports.ScrollbarElement=ScrollbarElement;exports.SmoothScrollElement=SmoothScrollElement;
|
|
1
|
+
"use strict";var __defProp=Object.defineProperty,__defProps=Object.defineProperties;var __getOwnPropDescs=Object.getOwnPropertyDescriptors;var __getOwnPropSymbols=Object.getOwnPropertySymbols;var __hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable;var __typeError=msg=>{throw TypeError(msg)};var __defNormalProp=(obj,key,value)=>key in obj?__defProp(obj,key,{enumerable:!0,configurable:!0,writable:!0,value}):obj[key]=value,__spreadValues=(a,b)=>{for(var prop in b||(b={}))__hasOwnProp.call(b,prop)&&__defNormalProp(a,prop,b[prop]);if(__getOwnPropSymbols)for(var prop of __getOwnPropSymbols(b))__propIsEnum.call(b,prop)&&__defNormalProp(a,prop,b[prop]);return a},__spreadProps=(a,b)=>__defProps(a,__getOwnPropDescs(b)),__name=(target,value)=>__defProp(target,"name",{value,configurable:!0});var __accessCheck=(obj,member,msg)=>member.has(obj)||__typeError("Cannot "+msg);var __privateGet=(obj,member,getter)=>(__accessCheck(obj,member,"read from private field"),getter?getter.call(obj):member.get(obj)),__privateAdd=(obj,member,value)=>member.has(obj)?__typeError("Cannot add the same private member more than once"):member instanceof WeakSet?member.add(obj):member.set(obj,value),__privateSet=(obj,member,value,setter)=>(__accessCheck(obj,member,"write to private field"),setter?setter.call(obj,value):member.set(obj,value),value),__privateMethod=(obj,member,method)=>(__accessCheck(obj,member,"access private method"),method);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const intersector_index=require("../index-BrasTsja.cjs"),browser=require("../browser-CIp8NsnF.cjs"),dom=require("../dom-B40i6NXw.cjs"),gestures=require("../gestures-DtYbQr49.cjs");require("construct-style-sheets-polyfill");const ScrollNavigator=require("../ScrollNavigator-CNKI1Iae.cjs"),cssProperty_index=require("../css-property/index.cjs"),elementLinkedStore_index=require("../element-linked-store/index.cjs"),elementResizer_index=require("../element-resizer/index.cjs"),events=require("../events-UlGk63iC.cjs"),layout=require("../layout-rR4-aYTY.cjs"),loading=require("../loading-7Ju1mFST.cjs"),math=require("../math-C-knY2TL.cjs"),windowResizer_index=require("../window-resizer/index.cjs"),Damped=require("../Damped-DTVkIAqc.cjs"),Viewport=require("../Viewport-BdFs1Zsn.cjs"),order_index=require("../order/index.cjs"),scrollEntries_index=require("../scroll-entries/index.cjs");var _scrollElement,_thumbElement,_thumbScrollSize,_limit,_isHorizontal,_activeTimeoutId,_ScrollbarElement_instances,init_fn,destroy_fn,scrollPosition_get,scrollSize_get,scrollViewportSize_get,_scrollListener,_resizeListener,_grabListener,_tickListener,_intersectionListener,_spaUpdateListener;const _ScrollbarElement=class _ScrollbarElement extends HTMLElement{constructor(){super(...arguments);__privateAdd(this,_ScrollbarElement_instances);__privateAdd(this,_scrollElement,null);__privateAdd(this,_thumbElement,null);__privateAdd(this,_thumbScrollSize,0);__privateAdd(this,_limit,0);__privateAdd(this,_isHorizontal,!1);__privateAdd(this,_activeTimeoutId);__privateAdd(this,_scrollListener,__name(()=>{this.classList.add("active"),clearTimeout(__privateGet(this,_activeTimeoutId));const position=__privateGet(this,_ScrollbarElement_instances,scrollPosition_get)/__privateGet(this,_limit)*__privateGet(this,_thumbScrollSize);__privateGet(this,_isHorizontal)?__privateGet(this,_thumbElement).style.transform=`translate3d(${position}px, 0px, 0px)`:__privateGet(this,_thumbElement).style.transform=`translate3d(0px, ${position}px, 0px)`,__privateSet(this,_activeTimeoutId,setTimeout(()=>{this.classList.remove("active")},1e3))},"#scrollListener"));__privateAdd(this,_resizeListener,__name(()=>{const barSize=__privateGet(this,_isHorizontal)?this.offsetWidth:this.offsetHeight,scrollSize=__privateGet(this,_ScrollbarElement_instances,scrollSize_get),viewportSize=__privateGet(this,_ScrollbarElement_instances,scrollViewportSize_get);__privateSet(this,_limit,scrollSize-viewportSize);let thumbSize=barSize*barSize/(__privateGet(this,_limit)+barSize);thumbSize=Math.max(thumbSize,30),__privateGet(this,_isHorizontal)?(__privateGet(this,_thumbElement).style.width=thumbSize+"px",__privateGet(this,_thumbElement).style.height="100%"):(__privateGet(this,_thumbElement).style.width="100%",__privateGet(this,_thumbElement).style.height=thumbSize+"px"),__privateSet(this,_thumbScrollSize,barSize-thumbSize),scrollSize<=viewportSize?this.style.display="none":this.style.display="block"},"#resizeListener"));__privateAdd(this,_grabListener,__name(grabEvent=>{const startValue=__privateGet(this,_ScrollbarElement_instances,scrollPosition_get),grabCursor=__privateGet(this,_isHorizontal)?grabEvent.x:grabEvent.y;gestures.setupDrag(moveEvent=>{const mult=__privateGet(this,_limit)/__privateGet(this,_thumbScrollSize),delta=(__privateGet(this,_isHorizontal)?moveEvent.x-grabCursor:moveEvent.y-grabCursor)*mult;__privateGet(this,_isHorizontal)?__privateGet(this,_scrollElement).scroll({left:startValue+delta,behavior:"instant"}):__privateGet(this,_scrollElement).scroll({top:startValue+delta,behavior:"instant"})})},"#grabListener"));__privateAdd(this,_tickListener,__name(()=>{__privateGet(this,_resizeListener).call(this)},"#tickListener"));__privateAdd(this,_intersectionListener,__name(e=>{e.isIntersecting?(intersector_index.ticker.subscribe(__privateGet(this,_tickListener),{maxFPS:5}),__privateGet(this,_tickListener).call(this)):intersector_index.ticker.unsubscribe(__privateGet(this,_tickListener))},"#intersectionListener"));__privateAdd(this,_spaUpdateListener,__name(()=>{__privateMethod(this,_ScrollbarElement_instances,destroy_fn).call(this),__privateMethod(this,_ScrollbarElement_instances,init_fn).call(this)},"#spaUpdateListener"))}connectedCallback(){__privateMethod(this,_ScrollbarElement_instances,init_fn).call(this),document.addEventListener("spaAfterUpdate",__privateGet(this,_spaUpdateListener))}disconnectedCallback(){__privateMethod(this,_ScrollbarElement_instances,destroy_fn).call(this),document.removeEventListener("spaAfterUpdate",__privateGet(this,_spaUpdateListener))}};_scrollElement=new WeakMap,_thumbElement=new WeakMap,_thumbScrollSize=new WeakMap,_limit=new WeakMap,_isHorizontal=new WeakMap,_activeTimeoutId=new WeakMap,_ScrollbarElement_instances=new WeakSet,init_fn=__name(function(){const scrollSelector=this.getAttribute("data-scroll");let scrollElement=null;scrollSelector&&(scrollSelector==="parent"?scrollElement=this.parentElement:scrollElement=document.querySelector(scrollSelector)),scrollElement||(scrollElement=dom.findScrollParentElement(this),scrollElement===document.body&&(scrollElement=window)),__privateSet(this,_isHorizontal,this.hasAttribute("horisontal"));const thumbElement=this.querySelector("[data-thumb]");scrollElement&&thumbElement&&(__privateSet(this,_scrollElement,scrollElement),__privateSet(this,_thumbElement,thumbElement),__privateGet(this,_scrollElement).addEventListener("scroll",__privateGet(this,_scrollListener)),__privateGet(this,_thumbElement).addEventListener("pointerdown",__privateGet(this,_grabListener)),intersector_index.intersector.subscribe(this.parentElement===document.body?this:this.parentElement,__privateGet(this,_intersectionListener)))},"#init"),destroy_fn=__name(function(){var _a,_b;(_a=__privateGet(this,_scrollElement))==null||_a.removeEventListener("scroll",__privateGet(this,_scrollListener)),(_b=__privateGet(this,_thumbElement))==null||_b.removeEventListener("pointerdown",__privateGet(this,_grabListener)),clearTimeout(__privateGet(this,_activeTimeoutId)),intersector_index.intersector.unsubscribe(__privateGet(this,_intersectionListener)),intersector_index.ticker.unsubscribe(__privateGet(this,_tickListener))},"#destroy"),scrollPosition_get=__name(function(){return __privateGet(this,_scrollElement)instanceof HTMLElement?__privateGet(this,_isHorizontal)?__privateGet(this,_scrollElement).scrollLeft:__privateGet(this,_scrollElement).scrollTop:__privateGet(this,_isHorizontal)?__privateGet(this,_scrollElement).scrollX:__privateGet(this,_scrollElement).scrollY},"#scrollPosition"),scrollSize_get=__name(function(){return __privateGet(this,_scrollElement)instanceof HTMLElement?__privateGet(this,_isHorizontal)?__privateGet(this,_scrollElement).scrollWidth:__privateGet(this,_scrollElement).scrollHeight:__privateGet(this,_isHorizontal)?Math.max(document.body.scrollWidth,document.documentElement.scrollWidth,document.body.offsetWidth,document.documentElement.offsetWidth,document.body.clientWidth,document.documentElement.clientWidth):Math.max(document.body.scrollHeight,document.documentElement.scrollHeight,document.body.offsetHeight,document.documentElement.offsetHeight,document.body.clientHeight,document.documentElement.clientHeight)},"#scrollSize"),scrollViewportSize_get=__name(function(){return __privateGet(this,_scrollElement)instanceof HTMLElement?__privateGet(this,_isHorizontal)?__privateGet(this,_scrollElement).offsetWidth:__privateGet(this,_scrollElement).offsetHeight:__privateGet(this,_isHorizontal)?innerWidth:innerHeight},"#scrollViewportSize"),_scrollListener=new WeakMap,_resizeListener=new WeakMap,_grabListener=new WeakMap,_tickListener=new WeakMap,_intersectionListener=new WeakMap,_spaUpdateListener=new WeakMap,__name(_ScrollbarElement,"ScrollbarElement");let ScrollbarElement=_ScrollbarElement;browser.isBrowser&&!customElements.get("e-scrollbar")&&customElements.define("e-scrollbar",ScrollbarElement);var _statusHolderElements,_progressHolderElements,_scrollElement2,_statusHolderCSSProperty,_progressHolderCSSProperty,_disabledCSSProperty,_startOffsetCSSProperty,_startOffsetMinCSSProperty,_startExtraOffsetCSSProperty,_distanceCSSProperty,_distanceOffsetCSSProperty,_progressVarCSSProperty,_enterOnceCSSProperty,_status,_initialPosition,_start,_finish,_distance,_scrolled,_progress,_visible,_loadingUnsub,_ScrollRegionElement_instances,addGlobalClasses_fn,removeGlobalClasses_fn,init_fn2,_resizeListener2,_tickListener2,enter_fn,exit_fn,cssVar_fn,_loadingListener;const _ScrollRegionElement=class _ScrollRegionElement extends HTMLElement{constructor(){super(...arguments);__privateAdd(this,_ScrollRegionElement_instances);__privateAdd(this,_statusHolderElements,[this]);__privateAdd(this,_progressHolderElements,[this]);__privateAdd(this,_scrollElement2,null);__privateAdd(this,_statusHolderCSSProperty,new cssProperty_index.CSSProperty(this,"--scroll-region-status-holder",!1));__privateAdd(this,_progressHolderCSSProperty,new cssProperty_index.CSSProperty(this,"--scroll-region-progress-holder",!1));__privateAdd(this,_disabledCSSProperty,new cssProperty_index.CSSProperty(this,"--scroll-region-disabled",!1));__privateAdd(this,_startOffsetCSSProperty,new cssProperty_index.CSSProperty(this,"--scroll-region-start-offset",0,{rawValueCheck:!1}));__privateAdd(this,_startOffsetMinCSSProperty,new cssProperty_index.CSSProperty(this,"--scroll-region-start-offset-min",!1,{rawValueCheck:!1}));__privateAdd(this,_startExtraOffsetCSSProperty,new cssProperty_index.CSSProperty(this,"--scroll-region-start-extra-offset",0,{rawValueCheck:!1}));__privateAdd(this,_distanceCSSProperty,new cssProperty_index.CSSProperty(this,"--scroll-region-distance",0,{rawValueCheck:!1}));__privateAdd(this,_distanceOffsetCSSProperty,new cssProperty_index.CSSProperty(this,"--scroll-region-distance-offset",0,{rawValueCheck:!1}));__privateAdd(this,_progressVarCSSProperty,new cssProperty_index.CSSProperty(this,"--scroll-region-progress-var",""));__privateAdd(this,_enterOnceCSSProperty,new cssProperty_index.CSSProperty(this,"--scroll-region-enter-once",!1));__privateAdd(this,_status,new elementLinkedStore_index.ElementLinkedStore(this,{enabled:!1,entered:!1,enteredOnLoad:!1,activated:!1}));__privateAdd(this,_initialPosition,0);__privateAdd(this,_start,0);__privateAdd(this,_finish,0);__privateAdd(this,_distance,0);__privateAdd(this,_scrolled,0);__privateAdd(this,_progress,0);__privateAdd(this,_visible,!1);__privateAdd(this,_loadingUnsub);__privateAdd(this,_resizeListener2,__name(()=>{this.resize()},"#resizeListener"));__privateAdd(this,_tickListener2,__name(()=>{this.tick()},"#tickListener"));__privateAdd(this,_loadingListener,__name(()=>{__privateMethod(this,_ScrollRegionElement_instances,init_fn2).call(this)},"#loadingListener"))}get start(){return __privateGet(this,_start)}get finish(){return __privateGet(this,_finish)}get distance(){return __privateGet(this,_distance)}get scrolled(){return __privateGet(this,_scrolled)}get progress(){return __privateGet(this,_progress)}get status(){return __privateGet(this,_status)}get scrollValue(){return __privateGet(this,_scrollElement2)instanceof HTMLElement?__privateGet(this,_scrollElement2).scrollTop:__privateGet(this,_scrollElement2).scrollY}resize(){__privateGet(this,_disabledCSSProperty).current||(__privateSet(this,_initialPosition,layout.getCumulativeOffsetTop(this)),__privateSet(this,_start,__privateGet(this,_initialPosition)),typeof __privateGet(this,_startOffsetMinCSSProperty).current=="number"?__privateSet(this,_start,__privateGet(this,_start)+Math.max(__privateGet(this,_startOffsetCSSProperty).current,__privateGet(this,_startOffsetMinCSSProperty).current)):__privateSet(this,_start,__privateGet(this,_start)+__privateGet(this,_startOffsetCSSProperty).current),__privateSet(this,_start,__privateGet(this,_start)+__privateGet(this,_startExtraOffsetCSSProperty).current),__privateSet(this,_start,__privateGet(this,_start)-layout.getStickyOffset(this,"top")),__privateSet(this,_finish,__privateGet(this,_start)),__privateGet(this,_distanceCSSProperty).current?__privateSet(this,_finish,__privateGet(this,_finish)+__privateGet(this,_distanceCSSProperty).current):__privateSet(this,_finish,__privateGet(this,_finish)+this.offsetHeight),__privateSet(this,_finish,__privateGet(this,_finish)+__privateGet(this,_distanceOffsetCSSProperty).current),__privateSet(this,_distance,__privateGet(this,_finish)-__privateGet(this,_start)),__privateSet(this,_visible,this.offsetWidth!==0&&this.offsetHeight!==0),this.tick())}tick(){if(__privateGet(this,_disabledCSSProperty).current)return;const scrollValue=this.scrollValue;if(__privateSet(this,_scrolled,math.clamp(scrollValue-__privateGet(this,_start),0,__privateGet(this,_distance))),__privateSet(this,_progress,__privateGet(this,_scrolled)/__privateGet(this,_distance)||0),__privateGet(this,_progressVarCSSProperty).current)for(let index=0;index<__privateGet(this,_progressHolderElements).length;index++)__privateGet(this,_progressHolderElements)[index].style.setProperty(__privateMethod(this,_ScrollRegionElement_instances,cssVar_fn).call(this,__privateGet(this,_progressVarCSSProperty).current),__privateGet(this,_progress).toFixed(6));__privateGet(this,_status).setKey("activated",scrollValue>=__privateGet(this,_start)),__privateGet(this,_visible)&&__privateGet(this,_status).isFalse("entered")&&scrollValue>=__privateGet(this,_start)&&scrollValue<=__privateGet(this,_finish)?__privateMethod(this,_ScrollRegionElement_instances,enter_fn).call(this):__privateGet(this,_visible)&&!__privateGet(this,_enterOnceCSSProperty).current&&__privateGet(this,_status).isTrue("entered")&&(scrollValue<__privateGet(this,_start)||scrollValue>__privateGet(this,_finish))&&__privateMethod(this,_ScrollRegionElement_instances,exit_fn).call(this),__privateGet(this,_enterOnceCSSProperty).current&&__privateGet(this,_progress)===1&&(__privateGet(this,_status).current.entered||__privateMethod(this,_ScrollRegionElement_instances,enter_fn).call(this),this.destroy()),events.dispatchEvent(this,"scrollRegionProgress",{detail:{progress:__privateGet(this,_progress),scrolled:__privateGet(this,_scrolled)}})}destroy(){var _a;(_a=__privateGet(this,_loadingUnsub))==null||_a.call(this),this.disable(!1),__privateGet(this,_statusHolderCSSProperty).close(),__privateGet(this,_progressHolderCSSProperty).close(),__privateGet(this,_disabledCSSProperty).close(),__privateGet(this,_startOffsetCSSProperty).close(),__privateGet(this,_startOffsetMinCSSProperty).close(),__privateGet(this,_startExtraOffsetCSSProperty).close(),__privateGet(this,_distanceCSSProperty).close(),__privateGet(this,_distanceOffsetCSSProperty).close(),__privateGet(this,_progressVarCSSProperty).close(),__privateGet(this,_enterOnceCSSProperty).close()}enable(){intersector_index.ticker.subscribe(__privateGet(this,_tickListener2),{culling:this.getAttribute("data-culling-element")||this}),elementResizer_index.elementResizer.subscribe(this,__privateGet(this,_resizeListener2)),windowResizer_index.windowResizer.subscribe(__privateGet(this,_resizeListener2)),__privateGet(this,_tickListener2).call(this),__privateGet(this,_status).setKey("enabled",!0)}disable(resetStatus=!0){intersector_index.ticker.unsubscribe(__privateGet(this,_tickListener2)),elementResizer_index.elementResizer.unsubscribe(__privateGet(this,_resizeListener2)),windowResizer_index.windowResizer.unsubscribe(__privateGet(this,_resizeListener2)),resetStatus&&__privateGet(this,_status).reset(),__privateMethod(this,_ScrollRegionElement_instances,removeGlobalClasses_fn).call(this)}connectedCallback(){const scrollSelector=this.getAttribute("data-scroll")||".page-scroll";__privateSet(this,_scrollElement2,document.querySelector(scrollSelector)),__privateSet(this,_loadingUnsub,loading.requestLoadingCallback("load",__privateGet(this,_loadingListener)))}disconnectedCallback(){this.destroy()}};_statusHolderElements=new WeakMap,_progressHolderElements=new WeakMap,_scrollElement2=new WeakMap,_statusHolderCSSProperty=new WeakMap,_progressHolderCSSProperty=new WeakMap,_disabledCSSProperty=new WeakMap,_startOffsetCSSProperty=new WeakMap,_startOffsetMinCSSProperty=new WeakMap,_startExtraOffsetCSSProperty=new WeakMap,_distanceCSSProperty=new WeakMap,_distanceOffsetCSSProperty=new WeakMap,_progressVarCSSProperty=new WeakMap,_enterOnceCSSProperty=new WeakMap,_status=new WeakMap,_initialPosition=new WeakMap,_start=new WeakMap,_finish=new WeakMap,_distance=new WeakMap,_scrolled=new WeakMap,_progress=new WeakMap,_visible=new WeakMap,_loadingUnsub=new WeakMap,_ScrollRegionElement_instances=new WeakSet,addGlobalClasses_fn=__name(function(){this.hasAttribute("data-global-class")&&document.documentElement.classList.add(this.getAttribute("data-global-class"))},"#addGlobalClasses"),removeGlobalClasses_fn=__name(function(){this.hasAttribute("data-global-class")&&document.documentElement.classList.remove(this.getAttribute("data-global-class"))},"#removeGlobalClasses"),init_fn2=__name(function(){__privateGet(this,_statusHolderCSSProperty).subscribe(e=>{__privateGet(this,_statusHolderElements).length&&__privateGet(this,_statusHolderElements).forEach(el=>{__privateGet(this,_status).removeElement(el)}),__privateSet(this,_statusHolderElements,[]),e.current?e.current.split(",").map(v=>v.trim()).forEach(selector=>{const element=document.querySelector(selector);element instanceof HTMLElement&&(__privateGet(this,_statusHolderElements).push(element),__privateGet(this,_status).addElement(element))}):(__privateSet(this,_statusHolderElements,[this]),__privateGet(this,_status).addElement(this))}),__privateGet(this,_progressHolderCSSProperty).subscribe(e=>{__privateGet(this,_progressHolderElements).length&&__privateGet(this,_progressHolderElements).forEach(el=>{el.style.removeProperty(__privateMethod(this,_ScrollRegionElement_instances,cssVar_fn).call(this,__privateGet(this,_progressVarCSSProperty).current))}),__privateSet(this,_progressHolderElements,[]),e.current?e.current.split(",").map(v=>v.trim()).forEach(selector=>{const element=document.querySelector(selector);element instanceof HTMLElement&&__privateGet(this,_progressHolderElements).push(element)}):__privateSet(this,_progressHolderElements,[this])}),__privateGet(this,_disabledCSSProperty).subscribe(e=>{e.current&&!e.previous?this.disable():this.enable()}),__privateGet(this,_progressVarCSSProperty).subscribe(e=>{e.current?__privateGet(this,_tickListener2).call(this):e.previous&&__privateGet(this,_progressHolderElements).forEach(el=>{el.style.removeProperty(__privateMethod(this,_ScrollRegionElement_instances,cssVar_fn).call(this,e.previous))})}),__privateGet(this,_distanceCSSProperty).subscribe(()=>{__privateGet(this,_resizeListener2).call(this)}),__privateGet(this,_statusHolderCSSProperty).observe(),__privateGet(this,_progressHolderCSSProperty).observe(),__privateGet(this,_disabledCSSProperty).observe(),__privateGet(this,_startOffsetCSSProperty).observe(),__privateGet(this,_startOffsetMinCSSProperty).observe(),__privateGet(this,_startExtraOffsetCSSProperty).observe(),__privateGet(this,_distanceCSSProperty).observe(),__privateGet(this,_distanceOffsetCSSProperty).observe(),__privateGet(this,_progressVarCSSProperty).observe(),__privateGet(this,_enterOnceCSSProperty).observe()},"#init"),_resizeListener2=new WeakMap,_tickListener2=new WeakMap,enter_fn=__name(function(){const scrollValue=this.scrollValue;__privateGet(this,_status).setKey("entered",!0),scrollValue===0&&__privateGet(this,_status).setKey("enteredOnLoad",!0),__privateMethod(this,_ScrollRegionElement_instances,addGlobalClasses_fn).call(this),events.dispatchEvent(this,"scrollRegionEnter")},"#enter"),exit_fn=__name(function(){__privateGet(this,_status).setKey("entered",!1),__privateMethod(this,_ScrollRegionElement_instances,removeGlobalClasses_fn).call(this),events.dispatchEvent(this,"scrollRegionExit")},"#exit"),cssVar_fn=__name(function(value){return`--${value}`},"#cssVar"),_loadingListener=new WeakMap,__name(_ScrollRegionElement,"ScrollRegionElement");let ScrollRegionElement=_ScrollRegionElement;customElements.get("e-scroll-region")||customElements.define("e-scroll-region",ScrollRegionElement);const scrollKeys=new Set(["ArrowUp","ArrowDown","ArrowLeft","ArrowRight","PageUp","PageDown","Home","End","Space"]);var _scrollElement3,_pointerElement,_cssDisabled,_cssDamping,_damped,_rounded,_needSync,_SmoothScrollElement_instances,currentScroll_get,setNativeScroll_fn,initScrollElement_fn,addListeners_fn,removeListeners_fn,checkDisabled_fn,inOverflowDirection_fn,shouldSkipSmoothScroll_fn,_wheelListener,_pointerdownListener,_resizeListener3,_keydownListener,_scrollListener2;const _SmoothScrollElement=class _SmoothScrollElement extends HTMLElement{constructor(){super();__privateAdd(this,_SmoothScrollElement_instances);__privateAdd(this,_scrollElement3,this);__privateAdd(this,_pointerElement,this);__privateAdd(this,_cssDisabled,new cssProperty_index.CSSProperty(this,"--smooth-scroll-disabled",!1));__privateAdd(this,_cssDamping,new cssProperty_index.CSSProperty(this,"--smooth-scroll-damping",10));__privateAdd(this,_damped,new Damped.Damped);__privateAdd(this,_rounded,0);__privateAdd(this,_needSync,!1);__privateAdd(this,_wheelListener,__name(e=>{__privateMethod(this,_SmoothScrollElement_instances,checkDisabled_fn).call(this)||Viewport.device.isMobile||(__privateMethod(this,_SmoothScrollElement_instances,inOverflowDirection_fn).call(this,e)||e.stopPropagation(),!__privateMethod(this,_SmoothScrollElement_instances,shouldSkipSmoothScroll_fn).call(this,e)&&(Math.abs(e.deltaX)>Math.abs(e.deltaY)||(ScrollNavigator.ScrollNavigator.tryStop(__privateGet(this,_scrollElement3),this.scrollTop),e.preventDefault(),this.shiftPosition(e.deltaY))))},"#wheelListener"));__privateAdd(this,_pointerdownListener,__name(e=>{if(!(e.target instanceof Element))return;const anchor=e.target.closest("a");if(!(e.button!==0||__privateMethod(this,_SmoothScrollElement_instances,checkDisabled_fn).call(this)&&!anchor)&&anchor&&!anchor.hasAttribute("data-smooth-scroll-skip")&&this.contains(anchor)){const url=new URL(anchor.href);url.hash&&(e.preventDefault(),this.stop(),this.scrollToElement(url.hash,{behavior:anchor.getAttribute("data-scroll-behavior")||"smooth",offset:anchor.getAttribute("data-scroll-offset")||void 0,center:anchor.hasAttribute("data-scroll-center"),duration:parseFloat(anchor.getAttribute("data-scroll-duration")||"0")||void 0,easing:anchor.getAttribute("data-scroll-easing")||void 0}))}},"#pointerdownListener"));__privateAdd(this,_resizeListener3,__name(()=>{this.resize(),this.trySync()},"#resizeListener"));__privateAdd(this,_keydownListener,__name(e=>{__privateMethod(this,_SmoothScrollElement_instances,checkDisabled_fn).call(this)||scrollKeys.has(e.code)&&this.stop()},"#keydownListener"));__privateAdd(this,_scrollListener2,__name(()=>{this.trySync()},"#scrollListener"));__privateGet(this,_damped).setTickerOptions({order:order_index.TICK_ORDER.SCROLL})}resize(){const max=__privateGet(this,_scrollElement3)instanceof HTMLElement?__privateGet(this,_scrollElement3).scrollHeight-__privateGet(this,_scrollElement3).offsetHeight:document.documentElement.offsetHeight-Viewport.viewport.height;__privateGet(this,_damped).setEdges(0,max)}stop(){ScrollNavigator.ScrollNavigator.tryStop(__privateGet(this,_scrollElement3),this.scrollTop),__privateGet(this,_damped).stopAnimation(),__privateSet(this,_needSync,!0)}trySync(){const cv=__privateGet(this,_SmoothScrollElement_instances,currentScroll_get);(Viewport.device.isMobile||__privateGet(this,_needSync)||Math.abs(cv-__privateGet(this,_damped).current)>100)&&(__privateSet(this,_needSync,!1),__privateGet(this,_damped).setWithoutAnimation(cv))}shiftPosition(value){this.resize(),this.trySync(),__privateGet(this,_damped).set(__privateGet(this,_damped).target+value)}setPosition(value,behavior){this.resize(),this.trySync(),behavior==="instant"?__privateGet(this,_damped).setWithoutAnimation(value):__privateGet(this,_damped).set(value)}scrollToValue(value,behavior){Viewport.device.isMobile?this.scroll({top:value,behavior}):this.setPosition(value,behavior)}scrollToElement(elementOrSelector,options){ScrollNavigator.ScrollNavigator.scrollToElement(elementOrSelector,__spreadProps(__spreadValues({},options),{scrollElement:__privateGet(this,_scrollElement3),startValue:__privateGet(this,_damped).current,scrollCallback:__name(top=>{this.scrollToValue(top,options!=null&&options.duration?"instant":options==null?void 0:options.behavior)},"scrollCallback")}))}connectedCallback(){__privateMethod(this,_SmoothScrollElement_instances,initScrollElement_fn).call(this),__privateMethod(this,_SmoothScrollElement_instances,addListeners_fn).call(this),__privateGet(this,_damped).setWithoutAnimation(this.scrollTop),__privateGet(this,_damped).subscribe(e=>{const rounded=Math.round(e.current);scrollEntries_index.scrollEntries.update(this,"y",e.current),rounded!==__privateGet(this,_rounded)&&!Viewport.device.isMobile&&__privateMethod(this,_SmoothScrollElement_instances,setNativeScroll_fn).call(this,rounded),document.documentElement.classList.toggle("scrolling",rounded!==__privateGet(this,_rounded)),console.log(rounded),__privateSet(this,_rounded,rounded)}),__privateGet(this,_cssDamping).observe(),__privateGet(this,_cssDisabled).observe(),__privateGet(this,_cssDamping).subscribe(e=>{__privateGet(this,_damped).setOptions({damping:e.current})}),scrollEntries_index.scrollEntries.register(this),this.resize()}disconnectedCallback(){__privateGet(this,_damped).close(),__privateGet(this,_cssDamping).close(),__privateGet(this,_cssDisabled).close(),scrollEntries_index.scrollEntries.unregister(this),document.documentElement.classList.remove("scrolling"),__privateMethod(this,_SmoothScrollElement_instances,removeListeners_fn).call(this)}};_scrollElement3=new WeakMap,_pointerElement=new WeakMap,_cssDisabled=new WeakMap,_cssDamping=new WeakMap,_damped=new WeakMap,_rounded=new WeakMap,_needSync=new WeakMap,_SmoothScrollElement_instances=new WeakSet,currentScroll_get=__name(function(){return __privateGet(this,_scrollElement3)instanceof HTMLElement?__privateGet(this,_scrollElement3).scrollTop:__privateGet(this,_scrollElement3).scrollY},"#currentScroll"),setNativeScroll_fn=__name(function(top){__privateGet(this,_scrollElement3).scroll({top,behavior:"instant"})},"#setNativeScroll"),initScrollElement_fn=__name(function(){this.dataset.element==="window"?(__privateSet(this,_scrollElement3,window),__privateSet(this,_pointerElement,document.documentElement)):(__privateSet(this,_scrollElement3,dom.getElement(this.dataset.element)||this),__privateGet(this,_scrollElement3).setAttribute("tabindex","0"),__privateSet(this,_pointerElement,this))},"#initScrollElement"),addListeners_fn=__name(function(){window.addEventListener("resize",__privateGet(this,_resizeListener3)),__privateGet(this,_scrollElement3).addEventListener("keydown",__privateGet(this,_keydownListener)),__privateGet(this,_pointerElement).addEventListener("click",__privateGet(this,_pointerdownListener)),__privateGet(this,_scrollElement3).addEventListener("wheel",__privateGet(this,_wheelListener),{passive:!1}),__privateGet(this,_scrollElement3).addEventListener("scroll",__privateGet(this,_scrollListener2))},"#addListeners"),removeListeners_fn=__name(function(){window.removeEventListener("resize",__privateGet(this,_resizeListener3)),__privateGet(this,_scrollElement3).removeEventListener("keydown",__privateGet(this,_keydownListener)),__privateGet(this,_pointerElement).removeEventListener("click",__privateGet(this,_pointerdownListener)),__privateGet(this,_scrollElement3).removeEventListener("wheel",__privateGet(this,_wheelListener)),__privateGet(this,_scrollElement3).removeEventListener("scroll",__privateGet(this,_scrollListener2))},"#removeListeners"),checkDisabled_fn=__name(function(){return __privateGet(this,_cssDisabled).current||getComputedStyle(this).getPropertyValue("overflow")==="hidden"},"#checkDisabled"),inOverflowDirection_fn=__name(function(e){const dy=Math.sign(e.deltaY);return!(dy<0&&__privateGet(this,_damped).target===0&&__privateGet(this,_damped).direction<0||dy>0&&__privateGet(this,_damped).target===__privateGet(this,_damped).max&&__privateGet(this,_damped).direction>0)},"#inOverflowDirection"),shouldSkipSmoothScroll_fn=__name(function(e){if(!(e.target instanceof Element))return!1;const el=e.target.closest("[data-prevent-smooth-scroll]");if(!el)return!1;const attr=el.getAttribute("data-prevent-smooth-scroll");return attr?!matchMedia(attr).matches:!0},"#shouldSkipSmoothScroll"),_wheelListener=new WeakMap,_pointerdownListener=new WeakMap,_resizeListener3=new WeakMap,_keydownListener=new WeakMap,_scrollListener2=new WeakMap,__name(_SmoothScrollElement,"SmoothScrollElement");let SmoothScrollElement=_SmoothScrollElement;customElements.get("e-smooth-scroll")||customElements.define("e-smooth-scroll",SmoothScrollElement);exports.ScrollNavigator=ScrollNavigator.ScrollNavigator;exports.ScrollRegionElement=ScrollRegionElement;exports.ScrollbarElement=ScrollbarElement;exports.SmoothScrollElement=SmoothScrollElement;
|
|
@@ -1,3 +1,4 @@
|
|
|
1
1
|
export { ScrollbarElement } from './ScrollbarElement';
|
|
2
|
-
export {
|
|
2
|
+
export { ScrollNavigator, type ScrollNavigatorOptions } from './ScrollNavigator';
|
|
3
3
|
export { ScrollRegionElement, type ScrollRegionElementEvents, } from './ScrollRegionElement';
|
|
4
|
+
export { SmoothScrollElement } from './SmoothScrollElement';
|
package/lib/scroll-kit/index.js
CHANGED
|
@@ -15,17 +15,13 @@ var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { en
|
|
|
15
15
|
}, __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b)), __name = (target, value) => __defProp(target, "name", { value, configurable: !0 });
|
|
16
16
|
var __accessCheck = (obj, member, msg) => member.has(obj) || __typeError("Cannot " + msg);
|
|
17
17
|
var __privateGet = (obj, member, getter) => (__accessCheck(obj, member, "read from private field"), getter ? getter.call(obj) : member.get(obj)), __privateAdd = (obj, member, value) => member.has(obj) ? __typeError("Cannot add the same private member more than once") : member instanceof WeakSet ? member.add(obj) : member.set(obj, value), __privateSet = (obj, member, value, setter) => (__accessCheck(obj, member, "write to private field"), setter ? setter.call(obj, value) : member.set(obj, value), value), __privateMethod = (obj, member, method) => (__accessCheck(obj, member, "access private method"), method);
|
|
18
|
-
import { i as intersector, t as ticker } from "../index-
|
|
19
|
-
import { i as isBrowser } from "../
|
|
18
|
+
import { i as intersector, t as ticker } from "../index-Z2Lgb7xU.js";
|
|
19
|
+
import { i as isBrowser } from "../browser-B9QXFVgG.js";
|
|
20
20
|
import { f as findScrollParentElement, g as getElement } from "../dom-D8D-_9ty.js";
|
|
21
21
|
import { s as setupDrag } from "../gestures-DmKKNnh4.js";
|
|
22
22
|
import "construct-style-sheets-polyfill";
|
|
23
|
-
import {
|
|
24
|
-
import { D as Damped } from "../Damped-m3PWu4LD.js";
|
|
23
|
+
import { S as ScrollNavigator } from "../ScrollNavigator-CiZjoiyk.js";
|
|
25
24
|
import { CSSProperty } from "../css-property/index.js";
|
|
26
|
-
import { v as viewport, d as device } from "../Viewport-B3kVX27H.js";
|
|
27
|
-
import { scrollEntries } from "../scroll-entries/index.js";
|
|
28
|
-
import { s as scrollToElement, a as scrollToElementTweened } from "../scroll-D1MT0QMY.js";
|
|
29
25
|
import { ElementLinkedStore } from "../element-linked-store/index.js";
|
|
30
26
|
import { elementResizer } from "../element-resizer/index.js";
|
|
31
27
|
import { d as dispatchEvent } from "../events-Ds-TuvYW.js";
|
|
@@ -33,6 +29,10 @@ import { b as getCumulativeOffsetTop, g as getStickyOffset } from "../layout-DxO
|
|
|
33
29
|
import { r as requestLoadingCallback } from "../loading-BYWPyUhc.js";
|
|
34
30
|
import { c as clamp } from "../math-r8V23YFe.js";
|
|
35
31
|
import { windowResizer } from "../window-resizer/index.js";
|
|
32
|
+
import { D as Damped } from "../Damped-BxBI6Dds.js";
|
|
33
|
+
import { v as viewport, d as device } from "../Viewport-CPB14lI1.js";
|
|
34
|
+
import { TICK_ORDER } from "../order/index.js";
|
|
35
|
+
import { scrollEntries } from "../scroll-entries/index.js";
|
|
36
36
|
var _scrollElement, _thumbElement, _thumbScrollSize, _limit, _isHorizontal, _activeTimeoutId, _ScrollbarElement_instances, init_fn, destroy_fn, scrollPosition_get, scrollSize_get, scrollViewportSize_get, _scrollListener, _resizeListener, _grabListener, _tickListener, _intersectionListener, _spaUpdateListener;
|
|
37
37
|
const _ScrollbarElement = class _ScrollbarElement extends HTMLElement {
|
|
38
38
|
constructor() {
|
|
@@ -122,157 +122,14 @@ _scrollElement = new WeakMap(), _thumbElement = new WeakMap(), _thumbScrollSize
|
|
|
122
122
|
}, "#scrollViewportSize"), _scrollListener = new WeakMap(), _resizeListener = new WeakMap(), _grabListener = new WeakMap(), _tickListener = new WeakMap(), _intersectionListener = new WeakMap(), _spaUpdateListener = new WeakMap(), __name(_ScrollbarElement, "ScrollbarElement");
|
|
123
123
|
let ScrollbarElement = _ScrollbarElement;
|
|
124
124
|
isBrowser && !customElements.get("e-scrollbar") && customElements.define("e-scrollbar", ScrollbarElement);
|
|
125
|
-
|
|
126
|
-
"ArrowUp",
|
|
127
|
-
"ArrowDown",
|
|
128
|
-
"ArrowLeft",
|
|
129
|
-
"ArrowRight",
|
|
130
|
-
"PageUp",
|
|
131
|
-
"PageDown",
|
|
132
|
-
"Home",
|
|
133
|
-
"End",
|
|
134
|
-
"Space"
|
|
135
|
-
]);
|
|
136
|
-
var _scrollElement2, _cssDisabled, _cssDamping, _value, _currentRoundedValue, _needSync, _SmoothScrollElement_instances, checkDisabled_fn, _wheelListener, _pointerdownListener, _resizeListener2, _keydownListener, _scrollListener2;
|
|
137
|
-
const _SmoothScrollElement = class _SmoothScrollElement extends HTMLElement {
|
|
138
|
-
constructor() {
|
|
139
|
-
super(...arguments);
|
|
140
|
-
__privateAdd(this, _SmoothScrollElement_instances);
|
|
141
|
-
__privateAdd(this, _scrollElement2, this);
|
|
142
|
-
__privateAdd(this, _cssDisabled, new CSSProperty(this, "--smooth-scroll-disabled", !1));
|
|
143
|
-
__privateAdd(this, _cssDamping, new CSSProperty(this, "--smooth-scroll-damping", 10));
|
|
144
|
-
__privateAdd(this, _value, new Damped(0, { order: TICK_ORDER.SCROLL }));
|
|
145
|
-
__privateAdd(this, _currentRoundedValue, 0);
|
|
146
|
-
__privateAdd(this, _needSync, !1);
|
|
147
|
-
__privateAdd(this, _wheelListener, /* @__PURE__ */ __name((e) => {
|
|
148
|
-
if (!(__privateMethod(this, _SmoothScrollElement_instances, checkDisabled_fn).call(this) || device.isMobile)) {
|
|
149
|
-
if (Math.sign(e.deltaY) < 0 && __privateGet(this, _value).target === 0 && __privateGet(this, _value).direction < 0 || Math.sign(e.deltaY) > 0 && __privateGet(this, _value).target === __privateGet(this, _value).max && __privateGet(this, _value).direction > 0 || e.stopPropagation(), e.target instanceof Element) {
|
|
150
|
-
const preventElement = e.target.closest("[data-prevent-smooth-scroll]");
|
|
151
|
-
if (preventElement) {
|
|
152
|
-
const attrValue = preventElement.getAttribute(
|
|
153
|
-
"data-prevent-smooth-scroll"
|
|
154
|
-
);
|
|
155
|
-
if (attrValue) {
|
|
156
|
-
if (matchMedia(attrValue).matches)
|
|
157
|
-
return;
|
|
158
|
-
} else return;
|
|
159
|
-
}
|
|
160
|
-
}
|
|
161
|
-
Math.abs(e.deltaX) > Math.abs(e.deltaY) || (e.preventDefault(), this.shiftPosition(e.deltaY));
|
|
162
|
-
}
|
|
163
|
-
}, "#wheelListener"));
|
|
164
|
-
__privateAdd(this, _pointerdownListener, /* @__PURE__ */ __name((e) => {
|
|
165
|
-
if (e.target instanceof Element) {
|
|
166
|
-
const anchorElement = e.target.closest("a");
|
|
167
|
-
if (e.button !== 0 || __privateMethod(this, _SmoothScrollElement_instances, checkDisabled_fn).call(this) && !anchorElement)
|
|
168
|
-
return;
|
|
169
|
-
if (anchorElement && !anchorElement.hasAttribute("data-smooth-scroll-skip") && this.contains(anchorElement)) {
|
|
170
|
-
this.stop();
|
|
171
|
-
const url = new URL(anchorElement.href);
|
|
172
|
-
url.hash && (e.preventDefault(), this.scrollToElement(url.hash, {
|
|
173
|
-
behavior: anchorElement.getAttribute("data-scroll-behavior") || "smooth",
|
|
174
|
-
offset: anchorElement.getAttribute("data-scroll-offset") || void 0,
|
|
175
|
-
center: anchorElement.hasAttribute("data-scroll-center"),
|
|
176
|
-
duration: parseFloat(
|
|
177
|
-
anchorElement.getAttribute("data-scroll-duration") || "0"
|
|
178
|
-
) || void 0,
|
|
179
|
-
easing: anchorElement.getAttribute("data-scroll-easing") || void 0
|
|
180
|
-
}));
|
|
181
|
-
}
|
|
182
|
-
}
|
|
183
|
-
}, "#pointerdownListener"));
|
|
184
|
-
__privateAdd(this, _resizeListener2, /* @__PURE__ */ __name(() => {
|
|
185
|
-
this.resize(), this.sync();
|
|
186
|
-
}, "#resizeListener"));
|
|
187
|
-
__privateAdd(this, _keydownListener, /* @__PURE__ */ __name((e) => {
|
|
188
|
-
__privateMethod(this, _SmoothScrollElement_instances, checkDisabled_fn).call(this) || scrollKeys.has(e.code) && this.stop();
|
|
189
|
-
}, "#keydownListener"));
|
|
190
|
-
__privateAdd(this, _scrollListener2, /* @__PURE__ */ __name(() => {
|
|
191
|
-
device.isMobile && this.sync();
|
|
192
|
-
}, "#scrollListener"));
|
|
193
|
-
}
|
|
194
|
-
resize() {
|
|
195
|
-
__privateGet(this, _value).min = 0, __privateGet(this, _scrollElement2) instanceof HTMLElement ? __privateGet(this, _value).max = __privateGet(this, _scrollElement2).scrollHeight - __privateGet(this, _scrollElement2).offsetHeight : __privateGet(this, _value).max = document.documentElement.offsetHeight - viewport.height;
|
|
196
|
-
}
|
|
197
|
-
stop() {
|
|
198
|
-
var _a;
|
|
199
|
-
(_a = scrollToElementTweened.value) == null || _a.set(this.scrollTop, { equalize: !0 }), __privateGet(this, _value).unlistenAnimationFrame(), __privateSet(this, _needSync, !0);
|
|
200
|
-
}
|
|
201
|
-
sync() {
|
|
202
|
-
let currentValue = 0;
|
|
203
|
-
__privateGet(this, _scrollElement2) instanceof HTMLElement ? currentValue = __privateGet(this, _scrollElement2).scrollTop : currentValue = __privateGet(this, _scrollElement2).scrollY, (device.isMobile || __privateGet(this, _needSync) || Math.abs(currentValue - __privateGet(this, _value).current) > 100) && (__privateSet(this, _needSync, !1), __privateGet(this, _value).set(currentValue, { equalize: !0 }));
|
|
204
|
-
}
|
|
205
|
-
shiftPosition(value) {
|
|
206
|
-
this.resize(), this.sync(), __privateGet(this, _value).shift(value);
|
|
207
|
-
}
|
|
208
|
-
setPosition(value, options) {
|
|
209
|
-
this.resize(), this.sync(), __privateGet(this, _value).set(value, options);
|
|
210
|
-
}
|
|
211
|
-
scrollToValue(value, behavior) {
|
|
212
|
-
device.isMobile ? this.scroll({
|
|
213
|
-
top: value,
|
|
214
|
-
behavior
|
|
215
|
-
}) : this.setPosition(value, {
|
|
216
|
-
equalize: behavior === "instant"
|
|
217
|
-
});
|
|
218
|
-
}
|
|
219
|
-
scrollToElement(elementOrSelector, options) {
|
|
220
|
-
scrollToElement(elementOrSelector, __spreadProps(__spreadValues({}, options), {
|
|
221
|
-
scrollElement: __privateGet(this, _scrollElement2),
|
|
222
|
-
startValue: __privateGet(this, _value).current,
|
|
223
|
-
scrollCallback: /* @__PURE__ */ __name((top) => {
|
|
224
|
-
this.scrollToValue(
|
|
225
|
-
top,
|
|
226
|
-
options != null && options.duration ? "instant" : options == null ? void 0 : options.behavior
|
|
227
|
-
);
|
|
228
|
-
}, "scrollCallback")
|
|
229
|
-
}));
|
|
230
|
-
}
|
|
231
|
-
connectedCallback() {
|
|
232
|
-
this.dataset.element === "window" ? __privateSet(this, _scrollElement2, window) : __privateSet(this, _scrollElement2, getElement(this.dataset.element) || this), window.addEventListener("resize", __privateGet(this, _resizeListener2)), __privateGet(this, _scrollElement2).addEventListener(
|
|
233
|
-
"keydown",
|
|
234
|
-
__privateGet(this, _keydownListener)
|
|
235
|
-
), document.documentElement.addEventListener(
|
|
236
|
-
"pointerdown",
|
|
237
|
-
__privateGet(this, _pointerdownListener)
|
|
238
|
-
), __privateGet(this, _scrollElement2).addEventListener("wheel", __privateGet(this, _wheelListener), {
|
|
239
|
-
passive: !1
|
|
240
|
-
}), __privateGet(this, _scrollElement2).addEventListener("scroll", __privateGet(this, _scrollListener2)), __privateGet(this, _value).set(this.scrollTop, { equalize: !0 }), __privateGet(this, _value).subscribe((e) => {
|
|
241
|
-
const roundedCurrent = Math.round(e.current);
|
|
242
|
-
scrollEntries.update(this, "y", e.current), roundedCurrent !== __privateGet(this, _currentRoundedValue) && !device.isMobile && __privateGet(this, _scrollElement2).scroll({
|
|
243
|
-
top: roundedCurrent,
|
|
244
|
-
behavior: "instant"
|
|
245
|
-
}), document.documentElement.classList.toggle(
|
|
246
|
-
"scrolling",
|
|
247
|
-
roundedCurrent !== __privateGet(this, _currentRoundedValue)
|
|
248
|
-
), __privateSet(this, _currentRoundedValue, roundedCurrent);
|
|
249
|
-
}), __privateGet(this, _cssDamping).observe(), __privateGet(this, _cssDisabled).observe(), __privateGet(this, _cssDamping).subscribe((e) => {
|
|
250
|
-
__privateGet(this, _value).damping = e.current;
|
|
251
|
-
}), scrollEntries.register(this), this.resize();
|
|
252
|
-
}
|
|
253
|
-
disconnectedCallback() {
|
|
254
|
-
__privateGet(this, _value).close(), __privateGet(this, _cssDamping).close(), __privateGet(this, _cssDisabled).close(), scrollEntries.unregister(this), document.documentElement.classList.remove("scrolling"), window.removeEventListener("resize", __privateGet(this, _resizeListener2)), __privateGet(this, _scrollElement2).removeEventListener(
|
|
255
|
-
"keydown",
|
|
256
|
-
__privateGet(this, _keydownListener)
|
|
257
|
-
), document.documentElement.removeEventListener(
|
|
258
|
-
"pointerdown",
|
|
259
|
-
__privateGet(this, _pointerdownListener)
|
|
260
|
-
), __privateGet(this, _scrollElement2).removeEventListener("wheel", __privateGet(this, _wheelListener)), __privateGet(this, _scrollElement2).removeEventListener("scroll", __privateGet(this, _scrollListener2));
|
|
261
|
-
}
|
|
262
|
-
};
|
|
263
|
-
_scrollElement2 = new WeakMap(), _cssDisabled = new WeakMap(), _cssDamping = new WeakMap(), _value = new WeakMap(), _currentRoundedValue = new WeakMap(), _needSync = new WeakMap(), _SmoothScrollElement_instances = new WeakSet(), checkDisabled_fn = /* @__PURE__ */ __name(function() {
|
|
264
|
-
return __privateGet(this, _cssDisabled).current || getComputedStyle(this).getPropertyValue("overflow") === "hidden";
|
|
265
|
-
}, "#checkDisabled"), _wheelListener = new WeakMap(), _pointerdownListener = new WeakMap(), _resizeListener2 = new WeakMap(), _keydownListener = new WeakMap(), _scrollListener2 = new WeakMap(), __name(_SmoothScrollElement, "SmoothScrollElement");
|
|
266
|
-
let SmoothScrollElement = _SmoothScrollElement;
|
|
267
|
-
customElements.get("e-smooth-scroll") || customElements.define("e-smooth-scroll", SmoothScrollElement);
|
|
268
|
-
var _statusHolderElements, _progressHolderElements, _scrollElement3, _statusHolderCSSProperty, _progressHolderCSSProperty, _disabledCSSProperty, _startOffsetCSSProperty, _startOffsetMinCSSProperty, _startExtraOffsetCSSProperty, _distanceCSSProperty, _distanceOffsetCSSProperty, _progressVarCSSProperty, _enterOnceCSSProperty, _status, _initialPosition, _start, _finish, _distance, _scrolled, _progress, _visible, _loadingUnsub, _ScrollRegionElement_instances, addGlobalClasses_fn, removeGlobalClasses_fn, init_fn2, _resizeListener3, _tickListener2, enter_fn, exit_fn, cssVar_fn, _loadingListener;
|
|
125
|
+
var _statusHolderElements, _progressHolderElements, _scrollElement2, _statusHolderCSSProperty, _progressHolderCSSProperty, _disabledCSSProperty, _startOffsetCSSProperty, _startOffsetMinCSSProperty, _startExtraOffsetCSSProperty, _distanceCSSProperty, _distanceOffsetCSSProperty, _progressVarCSSProperty, _enterOnceCSSProperty, _status, _initialPosition, _start, _finish, _distance, _scrolled, _progress, _visible, _loadingUnsub, _ScrollRegionElement_instances, addGlobalClasses_fn, removeGlobalClasses_fn, init_fn2, _resizeListener2, _tickListener2, enter_fn, exit_fn, cssVar_fn, _loadingListener;
|
|
269
126
|
const _ScrollRegionElement = class _ScrollRegionElement extends HTMLElement {
|
|
270
127
|
constructor() {
|
|
271
128
|
super(...arguments);
|
|
272
129
|
__privateAdd(this, _ScrollRegionElement_instances);
|
|
273
130
|
__privateAdd(this, _statusHolderElements, [this]);
|
|
274
131
|
__privateAdd(this, _progressHolderElements, [this]);
|
|
275
|
-
__privateAdd(this,
|
|
132
|
+
__privateAdd(this, _scrollElement2, null);
|
|
276
133
|
__privateAdd(this, _statusHolderCSSProperty, new CSSProperty(
|
|
277
134
|
this,
|
|
278
135
|
"--scroll-region-status-holder",
|
|
@@ -352,7 +209,7 @@ const _ScrollRegionElement = class _ScrollRegionElement extends HTMLElement {
|
|
|
352
209
|
__privateAdd(this, _progress, 0);
|
|
353
210
|
__privateAdd(this, _visible, !1);
|
|
354
211
|
__privateAdd(this, _loadingUnsub);
|
|
355
|
-
__privateAdd(this,
|
|
212
|
+
__privateAdd(this, _resizeListener2, /* @__PURE__ */ __name(() => {
|
|
356
213
|
this.resize();
|
|
357
214
|
}, "#resizeListener"));
|
|
358
215
|
__privateAdd(this, _tickListener2, /* @__PURE__ */ __name(() => {
|
|
@@ -381,7 +238,7 @@ const _ScrollRegionElement = class _ScrollRegionElement extends HTMLElement {
|
|
|
381
238
|
return __privateGet(this, _status);
|
|
382
239
|
}
|
|
383
240
|
get scrollValue() {
|
|
384
|
-
return __privateGet(this,
|
|
241
|
+
return __privateGet(this, _scrollElement2) instanceof HTMLElement ? __privateGet(this, _scrollElement2).scrollTop : __privateGet(this, _scrollElement2).scrollY;
|
|
385
242
|
}
|
|
386
243
|
resize() {
|
|
387
244
|
__privateGet(this, _disabledCSSProperty).current || (__privateSet(this, _initialPosition, getCumulativeOffsetTop(this)), __privateSet(this, _start, __privateGet(this, _initialPosition)), typeof __privateGet(this, _startOffsetMinCSSProperty).current == "number" ? __privateSet(this, _start, __privateGet(this, _start) + Math.max(
|
|
@@ -399,7 +256,7 @@ const _ScrollRegionElement = class _ScrollRegionElement extends HTMLElement {
|
|
|
399
256
|
__privateMethod(this, _ScrollRegionElement_instances, cssVar_fn).call(this, __privateGet(this, _progressVarCSSProperty).current),
|
|
400
257
|
__privateGet(this, _progress).toFixed(6)
|
|
401
258
|
);
|
|
402
|
-
__privateGet(this, _status).
|
|
259
|
+
__privateGet(this, _status).setKey("activated", scrollValue >= __privateGet(this, _start)), __privateGet(this, _visible) && __privateGet(this, _status).isFalse("entered") && scrollValue >= __privateGet(this, _start) && scrollValue <= __privateGet(this, _finish) ? __privateMethod(this, _ScrollRegionElement_instances, enter_fn).call(this) : __privateGet(this, _visible) && !__privateGet(this, _enterOnceCSSProperty).current && __privateGet(this, _status).isTrue("entered") && (scrollValue < __privateGet(this, _start) || scrollValue > __privateGet(this, _finish)) && __privateMethod(this, _ScrollRegionElement_instances, exit_fn).call(this), __privateGet(this, _enterOnceCSSProperty).current && __privateGet(this, _progress) === 1 && (__privateGet(this, _status).current.entered || __privateMethod(this, _ScrollRegionElement_instances, enter_fn).call(this), this.destroy()), dispatchEvent(this, "scrollRegionProgress", {
|
|
403
260
|
detail: {
|
|
404
261
|
progress: __privateGet(this, _progress),
|
|
405
262
|
scrolled: __privateGet(this, _scrolled)
|
|
@@ -413,20 +270,20 @@ const _ScrollRegionElement = class _ScrollRegionElement extends HTMLElement {
|
|
|
413
270
|
enable() {
|
|
414
271
|
ticker.subscribe(__privateGet(this, _tickListener2), {
|
|
415
272
|
culling: this.getAttribute("data-culling-element") || this
|
|
416
|
-
}), elementResizer.subscribe(this, __privateGet(this,
|
|
273
|
+
}), elementResizer.subscribe(this, __privateGet(this, _resizeListener2)), windowResizer.subscribe(__privateGet(this, _resizeListener2)), __privateGet(this, _tickListener2).call(this), __privateGet(this, _status).setKey("enabled", !0);
|
|
417
274
|
}
|
|
418
275
|
disable(resetStatus = !0) {
|
|
419
|
-
ticker.unsubscribe(__privateGet(this, _tickListener2)), elementResizer.unsubscribe(__privateGet(this,
|
|
276
|
+
ticker.unsubscribe(__privateGet(this, _tickListener2)), elementResizer.unsubscribe(__privateGet(this, _resizeListener2)), windowResizer.unsubscribe(__privateGet(this, _resizeListener2)), resetStatus && __privateGet(this, _status).reset(), __privateMethod(this, _ScrollRegionElement_instances, removeGlobalClasses_fn).call(this);
|
|
420
277
|
}
|
|
421
278
|
connectedCallback() {
|
|
422
279
|
const scrollSelector = this.getAttribute("data-scroll") || ".page-scroll";
|
|
423
|
-
__privateSet(this,
|
|
280
|
+
__privateSet(this, _scrollElement2, document.querySelector(scrollSelector)), __privateSet(this, _loadingUnsub, requestLoadingCallback("load", __privateGet(this, _loadingListener)));
|
|
424
281
|
}
|
|
425
282
|
disconnectedCallback() {
|
|
426
283
|
this.destroy();
|
|
427
284
|
}
|
|
428
285
|
};
|
|
429
|
-
_statusHolderElements = new WeakMap(), _progressHolderElements = new WeakMap(),
|
|
286
|
+
_statusHolderElements = new WeakMap(), _progressHolderElements = new WeakMap(), _scrollElement2 = new WeakMap(), _statusHolderCSSProperty = new WeakMap(), _progressHolderCSSProperty = new WeakMap(), _disabledCSSProperty = new WeakMap(), _startOffsetCSSProperty = new WeakMap(), _startOffsetMinCSSProperty = new WeakMap(), _startExtraOffsetCSSProperty = new WeakMap(), _distanceCSSProperty = new WeakMap(), _distanceOffsetCSSProperty = new WeakMap(), _progressVarCSSProperty = new WeakMap(), _enterOnceCSSProperty = new WeakMap(), _status = new WeakMap(), _initialPosition = new WeakMap(), _start = new WeakMap(), _finish = new WeakMap(), _distance = new WeakMap(), _scrolled = new WeakMap(), _progress = new WeakMap(), _visible = new WeakMap(), _loadingUnsub = new WeakMap(), _ScrollRegionElement_instances = new WeakSet(), addGlobalClasses_fn = /* @__PURE__ */ __name(function() {
|
|
430
287
|
this.hasAttribute("data-global-class") && document.documentElement.classList.add(
|
|
431
288
|
this.getAttribute("data-global-class")
|
|
432
289
|
);
|
|
@@ -458,19 +315,150 @@ _statusHolderElements = new WeakMap(), _progressHolderElements = new WeakMap(),
|
|
|
458
315
|
el.style.removeProperty(__privateMethod(this, _ScrollRegionElement_instances, cssVar_fn).call(this, e.previous));
|
|
459
316
|
});
|
|
460
317
|
}), __privateGet(this, _distanceCSSProperty).subscribe(() => {
|
|
461
|
-
__privateGet(this,
|
|
318
|
+
__privateGet(this, _resizeListener2).call(this);
|
|
462
319
|
}), __privateGet(this, _statusHolderCSSProperty).observe(), __privateGet(this, _progressHolderCSSProperty).observe(), __privateGet(this, _disabledCSSProperty).observe(), __privateGet(this, _startOffsetCSSProperty).observe(), __privateGet(this, _startOffsetMinCSSProperty).observe(), __privateGet(this, _startExtraOffsetCSSProperty).observe(), __privateGet(this, _distanceCSSProperty).observe(), __privateGet(this, _distanceOffsetCSSProperty).observe(), __privateGet(this, _progressVarCSSProperty).observe(), __privateGet(this, _enterOnceCSSProperty).observe();
|
|
463
|
-
}, "#init"),
|
|
320
|
+
}, "#init"), _resizeListener2 = new WeakMap(), _tickListener2 = new WeakMap(), enter_fn = /* @__PURE__ */ __name(function() {
|
|
464
321
|
const scrollValue = this.scrollValue;
|
|
465
|
-
__privateGet(this, _status).
|
|
322
|
+
__privateGet(this, _status).setKey("entered", !0), scrollValue === 0 && __privateGet(this, _status).setKey("enteredOnLoad", !0), __privateMethod(this, _ScrollRegionElement_instances, addGlobalClasses_fn).call(this), dispatchEvent(this, "scrollRegionEnter");
|
|
466
323
|
}, "#enter"), exit_fn = /* @__PURE__ */ __name(function() {
|
|
467
|
-
__privateGet(this, _status).
|
|
324
|
+
__privateGet(this, _status).setKey("entered", !1), __privateMethod(this, _ScrollRegionElement_instances, removeGlobalClasses_fn).call(this), dispatchEvent(this, "scrollRegionExit");
|
|
468
325
|
}, "#exit"), cssVar_fn = /* @__PURE__ */ __name(function(value) {
|
|
469
326
|
return `--${value}`;
|
|
470
327
|
}, "#cssVar"), _loadingListener = new WeakMap(), __name(_ScrollRegionElement, "ScrollRegionElement");
|
|
471
328
|
let ScrollRegionElement = _ScrollRegionElement;
|
|
472
329
|
customElements.get("e-scroll-region") || customElements.define("e-scroll-region", ScrollRegionElement);
|
|
330
|
+
const scrollKeys = /* @__PURE__ */ new Set([
|
|
331
|
+
"ArrowUp",
|
|
332
|
+
"ArrowDown",
|
|
333
|
+
"ArrowLeft",
|
|
334
|
+
"ArrowRight",
|
|
335
|
+
"PageUp",
|
|
336
|
+
"PageDown",
|
|
337
|
+
"Home",
|
|
338
|
+
"End",
|
|
339
|
+
"Space"
|
|
340
|
+
]);
|
|
341
|
+
var _scrollElement3, _pointerElement, _cssDisabled, _cssDamping, _damped, _rounded, _needSync, _SmoothScrollElement_instances, currentScroll_get, setNativeScroll_fn, initScrollElement_fn, addListeners_fn, removeListeners_fn, checkDisabled_fn, inOverflowDirection_fn, shouldSkipSmoothScroll_fn, _wheelListener, _pointerdownListener, _resizeListener3, _keydownListener, _scrollListener2;
|
|
342
|
+
const _SmoothScrollElement = class _SmoothScrollElement extends HTMLElement {
|
|
343
|
+
constructor() {
|
|
344
|
+
super();
|
|
345
|
+
__privateAdd(this, _SmoothScrollElement_instances);
|
|
346
|
+
__privateAdd(this, _scrollElement3, this);
|
|
347
|
+
__privateAdd(this, _pointerElement, this);
|
|
348
|
+
__privateAdd(this, _cssDisabled, new CSSProperty(this, "--smooth-scroll-disabled", !1));
|
|
349
|
+
__privateAdd(this, _cssDamping, new CSSProperty(this, "--smooth-scroll-damping", 10));
|
|
350
|
+
__privateAdd(this, _damped, new Damped());
|
|
351
|
+
__privateAdd(this, _rounded, 0);
|
|
352
|
+
__privateAdd(this, _needSync, !1);
|
|
353
|
+
__privateAdd(this, _wheelListener, /* @__PURE__ */ __name((e) => {
|
|
354
|
+
__privateMethod(this, _SmoothScrollElement_instances, checkDisabled_fn).call(this) || device.isMobile || (__privateMethod(this, _SmoothScrollElement_instances, inOverflowDirection_fn).call(this, e) || e.stopPropagation(), !__privateMethod(this, _SmoothScrollElement_instances, shouldSkipSmoothScroll_fn).call(this, e) && (Math.abs(e.deltaX) > Math.abs(e.deltaY) || (ScrollNavigator.tryStop(__privateGet(this, _scrollElement3), this.scrollTop), e.preventDefault(), this.shiftPosition(e.deltaY))));
|
|
355
|
+
}, "#wheelListener"));
|
|
356
|
+
__privateAdd(this, _pointerdownListener, /* @__PURE__ */ __name((e) => {
|
|
357
|
+
if (!(e.target instanceof Element)) return;
|
|
358
|
+
const anchor = e.target.closest("a");
|
|
359
|
+
if (!(e.button !== 0 || __privateMethod(this, _SmoothScrollElement_instances, checkDisabled_fn).call(this) && !anchor) && anchor && !anchor.hasAttribute("data-smooth-scroll-skip") && this.contains(anchor)) {
|
|
360
|
+
const url = new URL(anchor.href);
|
|
361
|
+
url.hash && (e.preventDefault(), this.stop(), this.scrollToElement(url.hash, {
|
|
362
|
+
behavior: anchor.getAttribute("data-scroll-behavior") || "smooth",
|
|
363
|
+
offset: anchor.getAttribute("data-scroll-offset") || void 0,
|
|
364
|
+
center: anchor.hasAttribute("data-scroll-center"),
|
|
365
|
+
duration: parseFloat(anchor.getAttribute("data-scroll-duration") || "0") || void 0,
|
|
366
|
+
easing: anchor.getAttribute("data-scroll-easing") || void 0
|
|
367
|
+
}));
|
|
368
|
+
}
|
|
369
|
+
}, "#pointerdownListener"));
|
|
370
|
+
__privateAdd(this, _resizeListener3, /* @__PURE__ */ __name(() => {
|
|
371
|
+
this.resize(), this.trySync();
|
|
372
|
+
}, "#resizeListener"));
|
|
373
|
+
__privateAdd(this, _keydownListener, /* @__PURE__ */ __name((e) => {
|
|
374
|
+
__privateMethod(this, _SmoothScrollElement_instances, checkDisabled_fn).call(this) || scrollKeys.has(e.code) && this.stop();
|
|
375
|
+
}, "#keydownListener"));
|
|
376
|
+
__privateAdd(this, _scrollListener2, /* @__PURE__ */ __name(() => {
|
|
377
|
+
this.trySync();
|
|
378
|
+
}, "#scrollListener"));
|
|
379
|
+
__privateGet(this, _damped).setTickerOptions({ order: TICK_ORDER.SCROLL });
|
|
380
|
+
}
|
|
381
|
+
resize() {
|
|
382
|
+
const max = __privateGet(this, _scrollElement3) instanceof HTMLElement ? __privateGet(this, _scrollElement3).scrollHeight - __privateGet(this, _scrollElement3).offsetHeight : document.documentElement.offsetHeight - viewport.height;
|
|
383
|
+
__privateGet(this, _damped).setEdges(0, max);
|
|
384
|
+
}
|
|
385
|
+
stop() {
|
|
386
|
+
ScrollNavigator.tryStop(__privateGet(this, _scrollElement3), this.scrollTop), __privateGet(this, _damped).stopAnimation(), __privateSet(this, _needSync, !0);
|
|
387
|
+
}
|
|
388
|
+
trySync() {
|
|
389
|
+
const cv = __privateGet(this, _SmoothScrollElement_instances, currentScroll_get);
|
|
390
|
+
(device.isMobile || __privateGet(this, _needSync) || Math.abs(cv - __privateGet(this, _damped).current) > 100) && (__privateSet(this, _needSync, !1), __privateGet(this, _damped).setWithoutAnimation(cv));
|
|
391
|
+
}
|
|
392
|
+
shiftPosition(value) {
|
|
393
|
+
this.resize(), this.trySync(), __privateGet(this, _damped).set(__privateGet(this, _damped).target + value);
|
|
394
|
+
}
|
|
395
|
+
setPosition(value, behavior) {
|
|
396
|
+
this.resize(), this.trySync(), behavior === "instant" ? __privateGet(this, _damped).setWithoutAnimation(value) : __privateGet(this, _damped).set(value);
|
|
397
|
+
}
|
|
398
|
+
scrollToValue(value, behavior) {
|
|
399
|
+
device.isMobile ? this.scroll({ top: value, behavior }) : this.setPosition(value, behavior);
|
|
400
|
+
}
|
|
401
|
+
scrollToElement(elementOrSelector, options) {
|
|
402
|
+
ScrollNavigator.scrollToElement(elementOrSelector, __spreadProps(__spreadValues({}, options), {
|
|
403
|
+
scrollElement: __privateGet(this, _scrollElement3),
|
|
404
|
+
startValue: __privateGet(this, _damped).current,
|
|
405
|
+
scrollCallback: /* @__PURE__ */ __name((top) => {
|
|
406
|
+
this.scrollToValue(
|
|
407
|
+
top,
|
|
408
|
+
options != null && options.duration ? "instant" : options == null ? void 0 : options.behavior
|
|
409
|
+
);
|
|
410
|
+
}, "scrollCallback")
|
|
411
|
+
}));
|
|
412
|
+
}
|
|
413
|
+
connectedCallback() {
|
|
414
|
+
__privateMethod(this, _SmoothScrollElement_instances, initScrollElement_fn).call(this), __privateMethod(this, _SmoothScrollElement_instances, addListeners_fn).call(this), __privateGet(this, _damped).setWithoutAnimation(this.scrollTop), __privateGet(this, _damped).subscribe((e) => {
|
|
415
|
+
const rounded = Math.round(e.current);
|
|
416
|
+
scrollEntries.update(this, "y", e.current), rounded !== __privateGet(this, _rounded) && !device.isMobile && __privateMethod(this, _SmoothScrollElement_instances, setNativeScroll_fn).call(this, rounded), document.documentElement.classList.toggle(
|
|
417
|
+
"scrolling",
|
|
418
|
+
rounded !== __privateGet(this, _rounded)
|
|
419
|
+
), console.log(rounded), __privateSet(this, _rounded, rounded);
|
|
420
|
+
}), __privateGet(this, _cssDamping).observe(), __privateGet(this, _cssDisabled).observe(), __privateGet(this, _cssDamping).subscribe((e) => {
|
|
421
|
+
__privateGet(this, _damped).setOptions({ damping: e.current });
|
|
422
|
+
}), scrollEntries.register(this), this.resize();
|
|
423
|
+
}
|
|
424
|
+
disconnectedCallback() {
|
|
425
|
+
__privateGet(this, _damped).close(), __privateGet(this, _cssDamping).close(), __privateGet(this, _cssDisabled).close(), scrollEntries.unregister(this), document.documentElement.classList.remove("scrolling"), __privateMethod(this, _SmoothScrollElement_instances, removeListeners_fn).call(this);
|
|
426
|
+
}
|
|
427
|
+
};
|
|
428
|
+
_scrollElement3 = new WeakMap(), _pointerElement = new WeakMap(), _cssDisabled = new WeakMap(), _cssDamping = new WeakMap(), _damped = new WeakMap(), _rounded = new WeakMap(), _needSync = new WeakMap(), _SmoothScrollElement_instances = new WeakSet(), currentScroll_get = /* @__PURE__ */ __name(function() {
|
|
429
|
+
return __privateGet(this, _scrollElement3) instanceof HTMLElement ? __privateGet(this, _scrollElement3).scrollTop : __privateGet(this, _scrollElement3).scrollY;
|
|
430
|
+
}, "#currentScroll"), setNativeScroll_fn = /* @__PURE__ */ __name(function(top) {
|
|
431
|
+
__privateGet(this, _scrollElement3).scroll({ top, behavior: "instant" });
|
|
432
|
+
}, "#setNativeScroll"), initScrollElement_fn = /* @__PURE__ */ __name(function() {
|
|
433
|
+
this.dataset.element === "window" ? (__privateSet(this, _scrollElement3, window), __privateSet(this, _pointerElement, document.documentElement)) : (__privateSet(this, _scrollElement3, getElement(this.dataset.element) || this), __privateGet(this, _scrollElement3).setAttribute("tabindex", "0"), __privateSet(this, _pointerElement, this));
|
|
434
|
+
}, "#initScrollElement"), addListeners_fn = /* @__PURE__ */ __name(function() {
|
|
435
|
+
window.addEventListener("resize", __privateGet(this, _resizeListener3)), __privateGet(this, _scrollElement3).addEventListener(
|
|
436
|
+
"keydown",
|
|
437
|
+
__privateGet(this, _keydownListener)
|
|
438
|
+
), __privateGet(this, _pointerElement).addEventListener("click", __privateGet(this, _pointerdownListener)), __privateGet(this, _scrollElement3).addEventListener("wheel", __privateGet(this, _wheelListener), {
|
|
439
|
+
passive: !1
|
|
440
|
+
}), __privateGet(this, _scrollElement3).addEventListener("scroll", __privateGet(this, _scrollListener2));
|
|
441
|
+
}, "#addListeners"), removeListeners_fn = /* @__PURE__ */ __name(function() {
|
|
442
|
+
window.removeEventListener("resize", __privateGet(this, _resizeListener3)), __privateGet(this, _scrollElement3).removeEventListener(
|
|
443
|
+
"keydown",
|
|
444
|
+
__privateGet(this, _keydownListener)
|
|
445
|
+
), __privateGet(this, _pointerElement).removeEventListener("click", __privateGet(this, _pointerdownListener)), __privateGet(this, _scrollElement3).removeEventListener("wheel", __privateGet(this, _wheelListener)), __privateGet(this, _scrollElement3).removeEventListener("scroll", __privateGet(this, _scrollListener2));
|
|
446
|
+
}, "#removeListeners"), checkDisabled_fn = /* @__PURE__ */ __name(function() {
|
|
447
|
+
return __privateGet(this, _cssDisabled).current || getComputedStyle(this).getPropertyValue("overflow") === "hidden";
|
|
448
|
+
}, "#checkDisabled"), inOverflowDirection_fn = /* @__PURE__ */ __name(function(e) {
|
|
449
|
+
const dy = Math.sign(e.deltaY);
|
|
450
|
+
return !(dy < 0 && __privateGet(this, _damped).target === 0 && __privateGet(this, _damped).direction < 0 || dy > 0 && __privateGet(this, _damped).target === __privateGet(this, _damped).max && __privateGet(this, _damped).direction > 0);
|
|
451
|
+
}, "#inOverflowDirection"), shouldSkipSmoothScroll_fn = /* @__PURE__ */ __name(function(e) {
|
|
452
|
+
if (!(e.target instanceof Element)) return !1;
|
|
453
|
+
const el = e.target.closest("[data-prevent-smooth-scroll]");
|
|
454
|
+
if (!el) return !1;
|
|
455
|
+
const attr = el.getAttribute("data-prevent-smooth-scroll");
|
|
456
|
+
return attr ? !matchMedia(attr).matches : !0;
|
|
457
|
+
}, "#shouldSkipSmoothScroll"), _wheelListener = new WeakMap(), _pointerdownListener = new WeakMap(), _resizeListener3 = new WeakMap(), _keydownListener = new WeakMap(), _scrollListener2 = new WeakMap(), __name(_SmoothScrollElement, "SmoothScrollElement");
|
|
458
|
+
let SmoothScrollElement = _SmoothScrollElement;
|
|
459
|
+
customElements.get("e-smooth-scroll") || customElements.define("e-smooth-scroll", SmoothScrollElement);
|
|
473
460
|
export {
|
|
461
|
+
ScrollNavigator,
|
|
474
462
|
ScrollRegionElement,
|
|
475
463
|
ScrollbarElement,
|
|
476
464
|
SmoothScrollElement
|
package/lib/sequence/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var __defProp=Object.defineProperty;var __typeError=msg=>{throw TypeError(msg)};var __name=(target,value)=>__defProp(target,"name",{value,configurable:!0});var __accessCheck=(obj,member,msg)=>member.has(obj)||__typeError("Cannot "+msg);var __privateGet=(obj,member,getter)=>(__accessCheck(obj,member,"read from private field"),getter?getter.call(obj):member.get(obj)),__privateAdd=(obj,member,value)=>member.has(obj)?__typeError("Cannot add the same private member more than once"):member instanceof WeakSet?member.add(obj):member.set(obj,value),__privateSet=(obj,member,value,setter)=>(__accessCheck(obj,member,"write to private field"),setter?setter.call(obj,value):member.set(obj,value),value);var __async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())});Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const cssProperty_index=require("../css-property/index.cjs"),elementResizer_index=require("../element-resizer/index.cjs"),
|
|
1
|
+
"use strict";var __defProp=Object.defineProperty;var __typeError=msg=>{throw TypeError(msg)};var __name=(target,value)=>__defProp(target,"name",{value,configurable:!0});var __accessCheck=(obj,member,msg)=>member.has(obj)||__typeError("Cannot "+msg);var __privateGet=(obj,member,getter)=>(__accessCheck(obj,member,"read from private field"),getter?getter.call(obj):member.get(obj)),__privateAdd=(obj,member,value)=>member.has(obj)?__typeError("Cannot add the same private member more than once"):member instanceof WeakSet?member.add(obj):member.set(obj,value),__privateSet=(obj,member,value,setter)=>(__accessCheck(obj,member,"write to private field"),setter?setter.call(obj,value):member.set(obj,value),value);var __async=(__this,__arguments,generator)=>new Promise((resolve,reject)=>{var fulfilled=value=>{try{step(generator.next(value))}catch(e){reject(e)}},rejected=value=>{try{step(generator.throw(value))}catch(e){reject(e)}},step=x=>x.done?resolve(x.value):Promise.resolve(x.value).then(fulfilled,rejected);step((generator=generator.apply(__this,__arguments)).next())});Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const cssProperty_index=require("../css-property/index.cjs"),elementResizer_index=require("../element-resizer/index.cjs"),browser=require("../browser-CIp8NsnF.cjs"),canvas=require("../canvas-BP1ceie3.cjs");require("construct-style-sheets-polyfill");require("../index-BrasTsja.cjs");const SourceElement=require("../SourceElement-D9iTbecT.cjs");require("../window-resizer/index.cjs");require("../Store-BP8tuWzQ.cjs");const canvas_index=require("../canvas/index.cjs");function extractNumbersBetweenCurlyBraces(str){const match=str.match(/\{([\d-]+)\}/);if(match){const range=match[1].split("-");if(range.length===2){const start=parseInt(range[0],10),end=parseInt(range[1],10);return{start,end}}}return null}__name(extractNumbersBetweenCurlyBraces,"extractNumbersBetweenCurlyBraces");var _currentImages,_fitCSSProperty,_autoplayCSSProperty,_offsetXCSSProperty,_offsetYCSSProperty,_imageDimensions,_currentIndex,_pad,_resizeListener,_renderListener;const _SequenceElement=class _SequenceElement extends SourceElement.SourceElement{constructor(parameters){super();__privateAdd(this,_currentImages,[]);__privateAdd(this,_fitCSSProperty,new cssProperty_index.CSSProperty(this,"--fit","contain"));__privateAdd(this,_autoplayCSSProperty,new cssProperty_index.CSSProperty(this,"--autoplay",!1));__privateAdd(this,_offsetXCSSProperty,new cssProperty_index.CSSProperty(this,"--offset-x",.5));__privateAdd(this,_offsetYCSSProperty,new cssProperty_index.CSSProperty(this,"--offset-y",.5));__privateAdd(this,_imageDimensions,null);__privateAdd(this,_currentIndex,0);__privateAdd(this,_pad,1);__privateAdd(this,_resizeListener,__name(()=>{if(__privateGet(this,_currentImages).length){const image=__privateGet(this,_currentImages)[0];__privateGet(this,_fitCSSProperty).current==="cover"?__privateSet(this,_imageDimensions,canvas.cover(image.naturalWidth,image.naturalHeight,this.consumerElement.width,this.consumerElement.height,__privateGet(this,_offsetXCSSProperty).current,__privateGet(this,_offsetYCSSProperty).current)):__privateSet(this,_imageDimensions,canvas.contain(image.naturalWidth,image.naturalHeight,this.consumerElement.width,this.consumerElement.height,__privateGet(this,_offsetXCSSProperty).current,__privateGet(this,_offsetYCSSProperty).current))}},"#resizeListener"));__privateAdd(this,_renderListener,__name(e=>{if(this.status.isFalse("loaded")||!__privateGet(this,_imageDimensions))return;e.detail.context.clearRect(0,0,e.detail.width,e.detail.height);const element=__privateGet(this,_currentImages)[__privateGet(this,_currentIndex)];element&&e.detail.context.drawImage(element,...__privateGet(this,_imageDimensions)),__privateGet(this,_autoplayCSSProperty).current&&__privateSet(this,_currentIndex,(__privateGet(this,_currentIndex)+1)%__privateGet(this,_currentImages).length)},"#renderListener"));browser.isBrowser&&(__privateSet(this,_pad,parseInt(((parameters==null?void 0:parameters.pad)||this.getAttribute("pad")||"1").toString())),__privateGet(this,_fitCSSProperty).subscribe(__privateGet(this,_resizeListener)),__privateGet(this,_offsetXCSSProperty).subscribe(__privateGet(this,_resizeListener)),__privateGet(this,_offsetYCSSProperty).subscribe(__privateGet(this,_resizeListener)),this.addEventListener("sourceCapture",e=>{this.consumerElement.addEventListener("canvasRender",__privateGet(this,_renderListener))}),this.addEventListener("sourceRelease",e=>{this.consumerElement.removeEventListener("canvasRender",__privateGet(this,_renderListener))}))}setProgress(value){__privateGet(this,_currentImages).length&&__privateSet(this,_currentIndex,Math.floor((__privateGet(this,_currentImages).length-1)*value))}connectedCallback(){super.connectedCallback(),__privateGet(this,_autoplayCSSProperty).observe(),__privateGet(this,_fitCSSProperty).observe(),__privateGet(this,_offsetXCSSProperty).observe(),__privateGet(this,_offsetYCSSProperty).observe(),elementResizer_index.elementResizer.subscribe(this,__privateGet(this,_resizeListener))}disconnectedCallback(){super.disconnectedCallback(),__privateGet(this,_autoplayCSSProperty).unobserve(),__privateGet(this,_fitCSSProperty).unobserve(),__privateGet(this,_offsetXCSSProperty).unobserve(),__privateGet(this,_offsetYCSSProperty).unobserve(),__privateSet(this,_currentImages,[]),elementResizer_index.elementResizer.unsubscribe(__privateGet(this,_resizeListener)),this.consumerElement.removeEventListener("canvasRender",__privateGet(this,_renderListener))}createConsumer(){return new canvas_index.CanvasElement}consumeSource(url){return __async(this,null,function*(){var _a,_b,_c,_d;if(url){this.consumerElement.removeEventListener("canvasRender",__privateGet(this,_renderListener));const newImages=[],minmax=extractNumbersBetweenCurlyBraces(url);if(minmax)for(let i=minmax.start;i<=minmax.end;i++){const src=url.replace(/\{([^}]+)\}/,i.toString().padStart(__privateGet(this,_pad),"0")),image=new Image;image.src=src,newImages.push(image)}else{const image=new Image;image.src=url,newImages.push(image)}try{yield Promise.all(newImages.map((image,i)=>new Promise((res,rej)=>{image.onload=()=>{res()},image.onerror=e=>{rej(`${image.src} Image not found`)}}))),__privateSet(this,_currentImages,newImages),__privateGet(this,_resizeListener).call(this),(_b=(_a=this.consumerElement).onload)==null||_b.call(_a,new Event("load")),this.isLazy||this.consumerElement.addEventListener("canvasRender",__privateGet(this,_renderListener))}catch(e){console.error(e),(_d=(_c=this.consumerElement).onerror)==null||_d.call(_c,new Event("error"))}}})}};_currentImages=new WeakMap,_fitCSSProperty=new WeakMap,_autoplayCSSProperty=new WeakMap,_offsetXCSSProperty=new WeakMap,_offsetYCSSProperty=new WeakMap,_imageDimensions=new WeakMap,_currentIndex=new WeakMap,_pad=new WeakMap,_resizeListener=new WeakMap,_renderListener=new WeakMap,__name(_SequenceElement,"SequenceElement");let SequenceElement=_SequenceElement;browser.isBrowser&&!customElements.get("e-sequence")&&customElements.define("e-sequence",SequenceElement);exports.SequenceElement=SequenceElement;
|