aptechka 0.92.5 → 0.92.6
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/{DragControls-QzcTE5Pt.js → DragControls-DSG2Orh3.js} +1 -1
- package/lib/{DragControls-Cwnszjzf.cjs → DragControls-DZ0Np8yt.cjs} +1 -1
- package/lib/{Tweened-DuJCwQl7.js → Tweened-CZeS3EqK.js} +5 -3
- package/lib/{Tweened-BZoUkI7O.cjs → Tweened-j_TwbxEI.cjs} +1 -1
- package/lib/animation/index.cjs +1 -1
- package/lib/animation/index.js +1 -1
- package/lib/controls/index.cjs +1 -1
- package/lib/controls/index.js +1 -1
- package/lib/morph/index.cjs +1 -1
- package/lib/morph/index.js +1 -1
- package/lib/scroll/ScrollElement.d.ts +1 -1
- package/lib/scroll/index.cjs +1 -1
- package/lib/scroll/index.js +2 -2
- package/lib/{scroll-DbYCgAnW.cjs → scroll-CTDesBpj.cjs} +1 -1
- package/lib/{scroll-CqF_88wv.js → scroll-D1MT0QMY.js} +1 -1
- package/lib/scroll-kit/index.cjs +1 -1
- package/lib/scroll-kit/index.js +1 -1
- package/lib/utils/easings.d.ts +2 -0
- package/lib/utils/index.cjs +1 -1
- package/lib/utils/index.js +38 -13
- package/lib/utils/progress.d.ts +4 -0
- package/package.json +1 -1
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-DbYCgAnW.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 _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,_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,_value).max=this.scrollHeight-this.offsetHeight}stop(){var _a;(_a=scroll.scrollToElementTweened.value)==null||_a.set(this.scrollTop,{equalize:!0}),__privateGet(this,_value).unlistenAnimationFrame(),__privateSet(this,_needSync,!0)}sync(){const currentValue=this.scrollTop;(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:this,startValue:__privateGet(this,_value).current,scrollCallback:__name(top=>{this.scrollToValue(top,options!=null&&options.duration?"instant":options==null?void 0:options.behavior)},"scrollCallback")}))}connectedCallback(){window.addEventListener("resize",__privateGet(this,_resizeListener2)),this.addEventListener("keydown",__privateGet(this,_keydownListener)),document.documentElement.addEventListener("pointerdown",__privateGet(this,_pointerdownListener)),this.addEventListener("wheel",__privateGet(this,_wheelListener),{passive:!1}),this.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&&this.scroll({top:roundedCurrent,behavior:"instant"}),__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),window.removeEventListener("resize",__privateGet(this,_resizeListener2)),this.removeEventListener("keydown",__privateGet(this,_keydownListener)),document.documentElement.removeEventListener("pointerdown",__privateGet(this,_pointerdownListener)),this.removeEventListener("wheel",__privateGet(this,_wheelListener)),this.removeEventListener("scroll",__privateGet(this,_scrollListener2))}};_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,_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,_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,_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,_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,_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).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}),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,_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,_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 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 _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,_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,_value).max=this.scrollHeight-this.offsetHeight}stop(){var _a;(_a=scroll.scrollToElementTweened.value)==null||_a.set(this.scrollTop,{equalize:!0}),__privateGet(this,_value).unlistenAnimationFrame(),__privateSet(this,_needSync,!0)}sync(){const currentValue=this.scrollTop;(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:this,startValue:__privateGet(this,_value).current,scrollCallback:__name(top=>{this.scrollToValue(top,options!=null&&options.duration?"instant":options==null?void 0:options.behavior)},"scrollCallback")}))}connectedCallback(){window.addEventListener("resize",__privateGet(this,_resizeListener2)),this.addEventListener("keydown",__privateGet(this,_keydownListener)),document.documentElement.addEventListener("pointerdown",__privateGet(this,_pointerdownListener)),this.addEventListener("wheel",__privateGet(this,_wheelListener),{passive:!1}),this.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&&this.scroll({top:roundedCurrent,behavior:"instant"}),__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),window.removeEventListener("resize",__privateGet(this,_resizeListener2)),this.removeEventListener("keydown",__privateGet(this,_keydownListener)),document.documentElement.removeEventListener("pointerdown",__privateGet(this,_pointerdownListener)),this.removeEventListener("wheel",__privateGet(this,_wheelListener)),this.removeEventListener("scroll",__privateGet(this,_scrollListener2))}};_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,_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,_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,_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,_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,_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).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}),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,_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,_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;
|
package/lib/scroll-kit/index.js
CHANGED
|
@@ -25,7 +25,7 @@ import { D as Damped } from "../Damped-m3PWu4LD.js";
|
|
|
25
25
|
import { CSSProperty } from "../css-property/index.js";
|
|
26
26
|
import { d as device } from "../Viewport-B3kVX27H.js";
|
|
27
27
|
import { scrollEntries } from "../scroll-entries/index.js";
|
|
28
|
-
import { s as scrollToElement, a as scrollToElementTweened } from "../scroll-
|
|
28
|
+
import { s as scrollToElement, a as scrollToElementTweened } from "../scroll-D1MT0QMY.js";
|
|
29
29
|
import { ElementLinkedStore } from "../element-linked-store/index.js";
|
|
30
30
|
import { elementResizer } from "../element-resizer/index.js";
|
|
31
31
|
import { d as dispatchEvent } from "../events-Ds-TuvYW.js";
|
package/lib/utils/easings.d.ts
CHANGED
|
@@ -15,6 +15,7 @@ export declare const easeInOutQuint: EasingFunction;
|
|
|
15
15
|
export declare const easeInExpo: EasingFunction;
|
|
16
16
|
export declare const easeOutExpo: EasingFunction;
|
|
17
17
|
export declare const easeInOutExpo: EasingFunction;
|
|
18
|
+
export declare const easeOvershoot: EasingFunction;
|
|
18
19
|
export declare const easings: {
|
|
19
20
|
readonly linear: EasingFunction;
|
|
20
21
|
readonly easeInQuad: EasingFunction;
|
|
@@ -32,4 +33,5 @@ export declare const easings: {
|
|
|
32
33
|
readonly easeInExpo: EasingFunction;
|
|
33
34
|
readonly easeOutExpo: EasingFunction;
|
|
34
35
|
readonly easeInOutExpo: EasingFunction;
|
|
36
|
+
readonly easeOvershoot: EasingFunction;
|
|
35
37
|
};
|
package/lib/utils/index.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var __defProp=Object.defineProperty;var __name=(target,value)=>__defProp(target,"name",{value,configurable:!0});Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const attributes=require("../attributes-BADnRZpK.cjs"),Store=require("../Store-B96mD8mD.cjs"),canvas=require("../canvas-BP1ceie3.cjs"),coordinates=require("../coordinates-DQ9XV9M1.cjs"),customElements=require("../custom-elements-BfZCJde6.cjs"),dom=require("../dom-B40i6NXw.cjs"),Tweened=require("../Tweened-BZoUkI7O.cjs"),element=require("../element-CqD0jqBJ.cjs"),events=require("../events-UlGk63iC.cjs"),file=require("../file-RHfA3OS-.cjs"),_function=require("../function-H4b_gTg6.cjs"),gestures=require("../gestures-DtYbQr49.cjs"),stylesheet=require("../stylesheet-DQv6_0na.cjs"),layout=require("../layout-rR4-aYTY.cjs"),loading=require("../loading-7Ju1mFST.cjs"),math=require("../math-C-knY2TL.cjs"),metadata=require("../metadata-BrHUfpV9.cjs"),morph=require("../morph-C71wnWQv.cjs"),number=require("../number-Bu4sGvW7.cjs"),object=require("../object-DTY_W6xG.cjs"),polyfills=require("../polyfills-DZCuDBkA.cjs"),promises=require("../promises-nDm8_iG6.cjs"),scroll=require("../scroll-DbYCgAnW.cjs"),style=require("../style-IDJ6db6n.cjs"),ticker_index=require("../index-BoGx2BWX.cjs"),url=require("../url-D0rESDQq.cjs");function insert(arr,index,...newItems){return[...arr.slice(0,index),...newItems,...arr.slice(index)]}__name(insert,"insert");function shiftArray(arr,positions){const len=arr.length;positions=positions%len;const result=new Array(len);for(let i=0;i<len;i++){const newPos=(i+positions)%len;result[newPos]=arr[i]}return result}__name(shiftArray,"shiftArray");function formatBytes(bytes,decimals=2){if(!+bytes)return"0 Bytes";const k=1024,dm=decimals<0?0:decimals,sizes=["Bytes","KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"],i=Math.floor(Math.log(bytes)/Math.log(k));return`${parseFloat((bytes/Math.pow(k,i)).toFixed(dm))} ${sizes[i]}`}__name(formatBytes,"formatBytes");function copyTextToClipboard(text){if(navigator.clipboard)navigator.clipboard.writeText(text).then(()=>{console.log("Text copied to clipboard successfully!")}).catch(err=>{console.error("Failed to copy text to clipboard:",err)});else{const textArea=document.createElement("textarea");textArea.value=text,textArea.style.position="fixed",textArea.style.top="0",textArea.style.left="0",document.body.appendChild(textArea),textArea.select();try{document.execCommand("copy")?console.log("Text copied to clipboard successfully!"):console.error("Failed to copy text to clipboard.")}catch(err){console.error("Failed to copy text to clipboard:",err)}document.body.removeChild(textArea)}}__name(copyTextToClipboard,"copyTextToClipboard");function dotRectCollision(dot,rect){return dot.x<rect.x+rect.width&&dot.x>rect.x&&dot.y<rect.y+rect.height&&dot.y>rect.y}__name(dotRectCollision,"dotRectCollision");function dotCircleCollision(dot,circle){return Math.sqrt((dot.x-circle.x)**2+(dot.y-circle.y)**2)<circle.radius}__name(dotCircleCollision,"dotCircleCollision");function dotPolygonCollision(dot,polygon){let inside=!1;const{x,y}=dot;for(let i=0,j=polygon.length-1;i<polygon.length;j=i++){const xi=polygon[i].x,yi=polygon[i].y,xj=polygon[j].x,yj=polygon[j].y;yi>y!=yj>y&&x<(xj-xi)*(y-yi)/(yj-yi)+xi&&(inside=!inside)}return inside}__name(dotPolygonCollision,"dotPolygonCollision");function rgbToHex(r,g,b){const toHex=__name(c=>{const hex=c.toString(16);return hex.length===1?"0"+hex:hex},"toHex");return`#${toHex(r)}${toHex(g)}${toHex(b)}`}__name(rgbToHex,"rgbToHex");function getStyleRuleActualValue(rule,name){const obj=rule.style.getPropertyValue(name);if(obj){const stringValue=obj.toString();return stringValue.startsWith("var")?getStyleRuleActualValue(rule,stringValue.slice(4,-1)):stringValue}}__name(getStyleRuleActualValue,"getStyleRuleActualValue");function getRootVariables(...names){const variables={};return Array.from(document.styleSheets).forEach(stylesheet2=>{Array.from(stylesheet2.cssRules).forEach(rule=>{rule instanceof CSSStyleRule&&rule.selectorText===":root"&&names.forEach(name=>{const value=getStyleRuleActualValue(rule,name);value&&(variables[name]=value)})})}),names.forEach(name=>{variables[name]||console.warn(`variable named ${name} not found`)}),variables}__name(getRootVariables,"getRootVariables");function encode(string){const decodedStr=window.atob(string);return decodeURIComponent(window.escape(decodedStr))}__name(encode,"encode");function decode(string){const encodedStr=window.unescape(encodeURIComponent(string));return window.btoa(encodedStr)}__name(decode,"decode");const phoneRegex=/^(\+?\d{1,3}[-.\s]?)?(\(?\d{3}\)?[-.\s]?)?\d{1,4}[-.\s]?\d{2,4}[-.\s]?\d{2,4}$/,emailRegex=/^[\w.-]+@[a-zA-Z\d.-]+\.[a-zA-Z]{2,}$/;function tryCreateHrefFromContact(contact){let href,type;return emailRegex.test(contact)?(href=`mailto:${contact.trim()}`,type="email"):phoneRegex.test(contact)&&(href=`tel:${contact.replace(/[^0-9\\.\\+]+/g,"")}`,type="phone"),{href,type,contact}}__name(tryCreateHrefFromContact,"tryCreateHrefFromContact");function transliterate(text,options={}){const{separator="-",lowercase=!0,replaceNumbers=!0,maxLength=60}=options,charMap={а:"a",б:"b",в:"v",г:"g",д:"d",е:"e",ё:"e",ж:"zh",з:"z",и:"i",й:"j",к:"k",л:"l",м:"m",н:"n",о:"o",п:"p",р:"r",с:"s",т:"t",у:"u",ф:"f",х:"h",ц:"c",ч:"ch",ш:"sh",щ:"sh",ъ:"",ы:"y",ь:"",э:"e",ю:"yu",я:"ya"};let result=text.replace(/[а-яё]/gi,char=>{const lowerChar=char.toLowerCase(),replacement=charMap[lowerChar]||"";return char===lowerChar?replacement:replacement.toUpperCase()});if(replaceNumbers){const numberMap={0:"zero",1:"one",2:"two",3:"three",4:"four",5:"five",6:"six",7:"seven",8:"eight",9:"nine"};result=result.replace(/[0-9]/g,num=>numberMap[num]||num)}return lowercase&&(result=result.toLowerCase()),result=result.replace(/[^\w\-]+/g,separator).replace(new RegExp(`\\${separator}+`,"g"),separator).replace(new RegExp(`(^\\${separator}|\\${separator}$)`,"g"),""),maxLength>0&&result.length>maxLength&&(result=result.substring(0,maxLength).replace(new RegExp(`\\${separator}[^\\${separator}]*$`),"")),result}__name(transliterate,"transliterate");function splitProgress(progress,items,initialItemsWithFullProgress=0){const totalItems=items-initialItemsWithFullProgress,splitted=[];for(let item=0;item<items;item++){const offset=item/totalItems-initialItemsWithFullProgress/totalItems,itemProgress=Math.min(1,Math.max(0,(progress-offset)*totalItems));splitted.push(itemProgress)}return splitted}__name(splitProgress,"splitProgress");function setElementsProgress(progress,elements,initialItemsWithFullProgress=0){const totalItems=elements.length-initialItemsWithFullProgress;elements.forEach((el,index)=>{const offset=index/totalItems-initialItemsWithFullProgress/totalItems,itemProgress=Math.min(1,Math.max(0,(progress-offset)*totalItems));el.style.setProperty("--item-progress",itemProgress.toString())})}__name(setElementsProgress,"setElementsProgress");function setActiveContentClasses(index,elements){elements.forEach((el,i)=>{i>index?(el.classList.remove("current","previous"),el.classList.add("next")):i<index?(el.classList.remove("current","next"),el.classList.add("previous")):(el.classList.remove("previous","next"),el.classList.add("current"))})}__name(setActiveContentClasses,"setActiveContentClasses");function cloneTemplateContent(templateElement,callback){if(templateElement){const element2=templateElement.content.cloneNode(!0).firstElementChild;return element2&&(callback==null||callback(element2)),element2}return null}__name(cloneTemplateContent,"cloneTemplateContent");function setIntervalOnIntersection(element2,delay,callback,options){let intervalId,isIntersecting=!1,current=0,previous=0,tickerUnsubsribe;const toggleInterval=__name(()=>{clearInterval(intervalId),tickerUnsubsribe==null||tickerUnsubsribe(),options!=null&&options.restartCounter&&(current=0),isIntersecting&&(callback({current,previous,progress:0}),previous=current,tickerUnsubsribe=restartTicker(),intervalId=setInterval(()=>{tickerUnsubsribe==null||tickerUnsubsribe(),current++,callback({current,previous,progress:0}),previous=current,tickerUnsubsribe=restartTicker()},delay))},"toggleInterval"),restartTicker=__name(()=>ticker_index.ticker.subscribe(e=>{const progress=e.timeElapsedSinceSubscription/delay;callback({current,previous,progress})}),"restartTicker"),intersectorUnsubscribe=ticker_index.intersector.subscribe(element2,e=>{isIntersecting=e.isIntersecting,toggleInterval()});return{destroy:__name(()=>{tickerUnsubsribe==null||tickerUnsubsribe(),intersectorUnsubscribe(),clearInterval(intervalId)},"destroy"),restart:__name((currentValue,previousValue)=>{current=currentValue||0,previousValue&&(previous=previousValue),toggleInterval()},"restart"),stop:__name(()=>{clearInterval(intervalId),tickerUnsubsribe==null||tickerUnsubsribe()},"stop")}}__name(setIntervalOnIntersection,"setIntervalOnIntersection");exports.getElementAttributesAdvanced=attributes.getElementAttributesAdvanced;exports.parseAttribute=attributes.parseAttribute;exports.parseAttributeValue=attributes.parseAttributeValue;exports.parseAttributeValueAdvanced=attributes.parseAttributeValueAdvanced;exports.camelToKebab=Store.camelToKebab;exports.capitalize=Store.capitalize;exports.declension=Store.declension;exports.decodeHtmlEntities=Store.decodeHtmlEntities;exports.generateId=Store.generateId;exports.getRandomChar=Store.getRandomChar;exports.isBrowser=Store.isBrowser;exports.isUppercase=Store.isUppercase;exports.kebabToCamel=Store.kebabToCamel;exports.snakeToDotted=Store.snakeToDotted;exports.toPascalCase=Store.toPascalCase;exports.uncapitalize=Store.uncapitalize;exports.contain=canvas.contain;exports.cover=canvas.cover;exports.fixPosition=canvas.fixPosition;exports.measureText=canvas.measureText;exports.getPointerPosition=coordinates.getPointerPosition;exports.normalize=coordinates.normalize;exports.screenToCartesian=coordinates.screenToCartesian;exports.whenDefined=customElements.whenDefined;exports.createScriptElement=dom.createScriptElement;exports.deepQuerySelectorAll=dom.deepQuerySelectorAll;exports.excludeElements=dom.excludeElements;exports.findParentElement=dom.findParentElement;exports.findScrollParentElement=dom.findScrollParentElement;exports.getAllParentElements=dom.getAllParentElements;exports.getElement=dom.getElement;exports.intersectElements=dom.intersectElements;exports.traverseNodes=dom.traverseNodes;exports.traverseShadowRoots=dom.traverseShadowRoots;exports.easeInCubic=Tweened.easeInCubic;exports.easeInExpo=Tweened.easeInExpo;exports.easeInOutCubic=Tweened.easeInOutCubic;exports.easeInOutExpo=Tweened.easeInOutExpo;exports.easeInOutQuad=Tweened.easeInOutQuad;exports.easeInOutQuart=Tweened.easeInOutQuart;exports.easeInOutQuint=Tweened.easeInOutQuint;exports.easeInQuad=Tweened.easeInQuad;exports.easeInQuart=Tweened.easeInQuart;exports.easeInQuint=Tweened.easeInQuint;exports.easeOutCubic=Tweened.easeOutCubic;exports.easeOutExpo=Tweened.easeOutExpo;exports.easeOutQuad=Tweened.easeOutQuad;exports.easeOutQuart=Tweened.easeOutQuart;exports.easeOutQuint=Tweened.easeOutQuint;exports.easings=Tweened.easings;exports.linear=Tweened.linear;exports.isElementVisible=element.isElementVisible;exports.dispatchEvent=events.dispatchEvent;exports.createJSONAndSave=file.createJSONAndSave;exports.downloadURI=file.downloadURI;exports.debounce=_function.debounce;exports.throttle=_function.throttle;exports.setupDrag=gestures.setupDrag;exports.createStylesheet=stylesheet.createStylesheet;exports.styleToString=stylesheet.styleToString;exports.getCumulativeOffsetLeft=layout.getCumulativeOffsetLeft;exports.getCumulativeOffsetTop=layout.getCumulativeOffsetTop;exports.getCumulativePosition=layout.getCumulativePosition;exports.getStickyOffset=layout.getStickyOffset;exports.requestLoadingCallback=loading.requestLoadingCallback;exports.calculateDistance=math.calculateDistance;exports.calculateDistanceWithRadius=math.calculateDistanceWithRadius;exports.clamp=math.clamp;exports.damp=math.damp;exports.lerp=math.lerp;exports.mapRange=math.mapRange;exports.round=math.round;exports.smootherstep=math.smootherstep;exports.smoothstep=math.smoothstep;exports.step=math.step;exports.formatMediaDuration=metadata.formatMediaDuration;exports.ACTION_CREATE=morph.ACTION_CREATE;exports.ACTION_PRESERVE=morph.ACTION_PRESERVE;exports.ACTION_REMOVE=morph.ACTION_REMOVE;exports.ACTION_REMOVE_ATTR=morph.ACTION_REMOVE_ATTR;exports.ACTION_REPLACE=morph.ACTION_REPLACE;exports.ACTION_SET_ATTR=morph.ACTION_SET_ATTR;exports.ACTION_SKIP=morph.ACTION_SKIP;exports.ACTION_UPDATE=morph.ACTION_UPDATE;exports.NODE_TYPE_COMMENT=morph.NODE_TYPE_COMMENT;exports.NODE_TYPE_DOCUMENT=morph.NODE_TYPE_DOCUMENT;exports.NODE_TYPE_ELEMENT=morph.NODE_TYPE_ELEMENT;exports.NODE_TYPE_TEXT=morph.NODE_TYPE_TEXT;exports.diff=morph.diff;exports.morph=morph.morph;exports.patch=morph.patch;exports.beautifyNumber=number.beautifyNumber;exports.loopNumber=number.loopNumber;exports.preciseNumber=number.preciseNumber;exports.roundNumberTo=number.roundNumberTo;exports.toStep=number.toStep;exports.cloneDeep=object.cloneDeep;exports.compareObjects=object.compareObjects;exports.isESClass=object.isESClass;exports.isNullish=object.isNullish;exports.isObject=object.isObject;exports.mergeDeep=object.mergeDeep;exports.mixin=object.mixin;exports.omit=object.omit;exports.pick=object.pick;exports.nullishCoalescing=polyfills.nullishCoalescing;exports.requestIdleCallback=polyfills.requestIdleCallback;exports.wait=promises.wait;exports.scrollToElement=scroll.scrollToElement;exports.scrollToElementTweened=scroll.scrollToElementTweened;exports.getElementTransitionDurationMS=style.getElementTransitionDurationMS;exports.getElementTransitionDurationS=style.getElementTransitionDurationS;exports.changeHistory=url.changeHistory;exports.isLocalUrl=url.isLocalUrl;exports.normalizeBase=url.normalizeBase;exports.normalizeRelativeURLs=url.normalizeRelativeURLs;exports.normalizeURL=url.normalizeURL;exports.parseSearchParameters=url.parseSearchParameters;exports.searchParamsObjectToString=url.searchParamsObjectToString;exports.searchParamsToObject=url.searchParamsToObject;exports.splitPath=url.splitPath;exports.updateSearchParameter=url.updateSearchParameter;exports.cloneTemplateContent=cloneTemplateContent;exports.copyTextToClipboard=copyTextToClipboard;exports.decode=decode;exports.dotCircleCollision=dotCircleCollision;exports.dotPolygonCollision=dotPolygonCollision;exports.dotRectCollision=dotRectCollision;exports.encode=encode;exports.formatBytes=formatBytes;exports.getRootVariables=getRootVariables;exports.getStyleRuleActualValue=getStyleRuleActualValue;exports.insert=insert;exports.rgbToHex=rgbToHex;exports.setActiveContentClasses=setActiveContentClasses;exports.setElementsProgress=setElementsProgress;exports.setIntervalOnIntersection=setIntervalOnIntersection;exports.shiftArray=shiftArray;exports.splitProgress=splitProgress;exports.transliterate=transliterate;exports.tryCreateHrefFromContact=tryCreateHrefFromContact;
|
|
1
|
+
"use strict";var __defProp=Object.defineProperty;var __name=(target,value)=>__defProp(target,"name",{value,configurable:!0});Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const attributes=require("../attributes-BADnRZpK.cjs"),Store=require("../Store-B96mD8mD.cjs"),canvas=require("../canvas-BP1ceie3.cjs"),coordinates=require("../coordinates-DQ9XV9M1.cjs"),customElements=require("../custom-elements-BfZCJde6.cjs"),dom=require("../dom-B40i6NXw.cjs"),Tweened=require("../Tweened-j_TwbxEI.cjs"),element=require("../element-CqD0jqBJ.cjs"),events=require("../events-UlGk63iC.cjs"),file=require("../file-RHfA3OS-.cjs"),_function=require("../function-H4b_gTg6.cjs"),gestures=require("../gestures-DtYbQr49.cjs"),stylesheet=require("../stylesheet-DQv6_0na.cjs"),layout=require("../layout-rR4-aYTY.cjs"),loading=require("../loading-7Ju1mFST.cjs"),math=require("../math-C-knY2TL.cjs"),metadata=require("../metadata-BrHUfpV9.cjs"),morph=require("../morph-C71wnWQv.cjs"),number=require("../number-Bu4sGvW7.cjs"),object=require("../object-DTY_W6xG.cjs"),polyfills=require("../polyfills-DZCuDBkA.cjs"),promises=require("../promises-nDm8_iG6.cjs"),scroll=require("../scroll-CTDesBpj.cjs"),style=require("../style-IDJ6db6n.cjs"),ticker_index=require("../index-BoGx2BWX.cjs"),url=require("../url-D0rESDQq.cjs");function insert(arr,index,...newItems){return[...arr.slice(0,index),...newItems,...arr.slice(index)]}__name(insert,"insert");function shiftArray(arr,positions){const len=arr.length;positions=positions%len;const result=new Array(len);for(let i=0;i<len;i++){const newPos=(i+positions)%len;result[newPos]=arr[i]}return result}__name(shiftArray,"shiftArray");function formatBytes(bytes,decimals=2){if(!+bytes)return"0 Bytes";const k=1024,dm=decimals<0?0:decimals,sizes=["Bytes","KiB","MiB","GiB","TiB","PiB","EiB","ZiB","YiB"],i=Math.floor(Math.log(bytes)/Math.log(k));return`${parseFloat((bytes/Math.pow(k,i)).toFixed(dm))} ${sizes[i]}`}__name(formatBytes,"formatBytes");function copyTextToClipboard(text){if(navigator.clipboard)navigator.clipboard.writeText(text).then(()=>{console.log("Text copied to clipboard successfully!")}).catch(err=>{console.error("Failed to copy text to clipboard:",err)});else{const textArea=document.createElement("textarea");textArea.value=text,textArea.style.position="fixed",textArea.style.top="0",textArea.style.left="0",document.body.appendChild(textArea),textArea.select();try{document.execCommand("copy")?console.log("Text copied to clipboard successfully!"):console.error("Failed to copy text to clipboard.")}catch(err){console.error("Failed to copy text to clipboard:",err)}document.body.removeChild(textArea)}}__name(copyTextToClipboard,"copyTextToClipboard");function dotRectCollision(dot,rect){return dot.x<rect.x+rect.width&&dot.x>rect.x&&dot.y<rect.y+rect.height&&dot.y>rect.y}__name(dotRectCollision,"dotRectCollision");function dotCircleCollision(dot,circle){return Math.sqrt((dot.x-circle.x)**2+(dot.y-circle.y)**2)<circle.radius}__name(dotCircleCollision,"dotCircleCollision");function dotPolygonCollision(dot,polygon){let inside=!1;const{x,y}=dot;for(let i=0,j=polygon.length-1;i<polygon.length;j=i++){const xi=polygon[i].x,yi=polygon[i].y,xj=polygon[j].x,yj=polygon[j].y;yi>y!=yj>y&&x<(xj-xi)*(y-yi)/(yj-yi)+xi&&(inside=!inside)}return inside}__name(dotPolygonCollision,"dotPolygonCollision");function rgbToHex(r,g,b){const toHex=__name(c=>{const hex=c.toString(16);return hex.length===1?"0"+hex:hex},"toHex");return`#${toHex(r)}${toHex(g)}${toHex(b)}`}__name(rgbToHex,"rgbToHex");function getStyleRuleActualValue(rule,name){const obj=rule.style.getPropertyValue(name);if(obj){const stringValue=obj.toString();return stringValue.startsWith("var")?getStyleRuleActualValue(rule,stringValue.slice(4,-1)):stringValue}}__name(getStyleRuleActualValue,"getStyleRuleActualValue");function getRootVariables(...names){const variables={};return Array.from(document.styleSheets).forEach(stylesheet2=>{Array.from(stylesheet2.cssRules).forEach(rule=>{rule instanceof CSSStyleRule&&rule.selectorText===":root"&&names.forEach(name=>{const value=getStyleRuleActualValue(rule,name);value&&(variables[name]=value)})})}),names.forEach(name=>{variables[name]||console.warn(`variable named ${name} not found`)}),variables}__name(getRootVariables,"getRootVariables");function encode(string){const decodedStr=window.atob(string);return decodeURIComponent(window.escape(decodedStr))}__name(encode,"encode");function decode(string){const encodedStr=window.unescape(encodeURIComponent(string));return window.btoa(encodedStr)}__name(decode,"decode");const phoneRegex=/^(\+?\d{1,3}[-.\s]?)?(\(?\d{3}\)?[-.\s]?)?\d{1,4}[-.\s]?\d{2,4}[-.\s]?\d{2,4}$/,emailRegex=/^[\w.-]+@[a-zA-Z\d.-]+\.[a-zA-Z]{2,}$/;function tryCreateHrefFromContact(contact){let href,type;return emailRegex.test(contact)?(href=`mailto:${contact.trim()}`,type="email"):phoneRegex.test(contact)&&(href=`tel:${contact.replace(/[^0-9\\.\\+]+/g,"")}`,type="phone"),{href,type,contact}}__name(tryCreateHrefFromContact,"tryCreateHrefFromContact");function transliterate(text,options={}){const{separator="-",lowercase=!0,replaceNumbers=!0,maxLength=60}=options,charMap={а:"a",б:"b",в:"v",г:"g",д:"d",е:"e",ё:"e",ж:"zh",з:"z",и:"i",й:"j",к:"k",л:"l",м:"m",н:"n",о:"o",п:"p",р:"r",с:"s",т:"t",у:"u",ф:"f",х:"h",ц:"c",ч:"ch",ш:"sh",щ:"sh",ъ:"",ы:"y",ь:"",э:"e",ю:"yu",я:"ya"};let result=text.replace(/[а-яё]/gi,char=>{const lowerChar=char.toLowerCase(),replacement=charMap[lowerChar]||"";return char===lowerChar?replacement:replacement.toUpperCase()});if(replaceNumbers){const numberMap={0:"zero",1:"one",2:"two",3:"three",4:"four",5:"five",6:"six",7:"seven",8:"eight",9:"nine"};result=result.replace(/[0-9]/g,num=>numberMap[num]||num)}return lowercase&&(result=result.toLowerCase()),result=result.replace(/[^\w\-]+/g,separator).replace(new RegExp(`\\${separator}+`,"g"),separator).replace(new RegExp(`(^\\${separator}|\\${separator}$)`,"g"),""),maxLength>0&&result.length>maxLength&&(result=result.substring(0,maxLength).replace(new RegExp(`\\${separator}[^\\${separator}]*$`),"")),result}__name(transliterate,"transliterate");function distributeProgress(progress,...items){if(items.length===0)return[];if(items.some(item=>item.weight<0))throw new Error("Все веса должны быть неотрицательными числами");const totalWeight=items.map(item=>item.weight).reduce((sum,weight)=>sum+weight,0);if(totalWeight===0)return items.forEach(item=>{var _a;return(_a=item.callback)==null?void 0:_a.call(item,0)}),Array(items.length).fill(0);const distributed=[];let accumulatedProgress=0;for(let i=0;i<items.length;i++){const{weight,callback}=items[i],itemShare=weight/totalWeight,itemStart=accumulatedProgress,itemEnd=accumulatedProgress+itemShare;let itemProgress=0;progress>=itemEnd?itemProgress=1:progress>itemStart&&(itemProgress=(progress-itemStart)/itemShare);const finalProgress=Math.min(1,Math.max(0,itemProgress));distributed.push(finalProgress),callback==null||callback(finalProgress),accumulatedProgress=itemEnd}return distributed}__name(distributeProgress,"distributeProgress");function splitProgress(progress,items,initialItemsWithFullProgress=0){const totalItems=items-initialItemsWithFullProgress,splitted=[];for(let item=0;item<items;item++){const offset=item/totalItems-initialItemsWithFullProgress/totalItems,itemProgress=Math.min(1,Math.max(0,(progress-offset)*totalItems));splitted.push(itemProgress)}return splitted}__name(splitProgress,"splitProgress");function setElementsProgress(progress,elements,initialItemsWithFullProgress=0){const totalItems=elements.length-initialItemsWithFullProgress;elements.forEach((el,index)=>{const offset=index/totalItems-initialItemsWithFullProgress/totalItems,itemProgress=Math.min(1,Math.max(0,(progress-offset)*totalItems));el.style.setProperty("--item-progress",itemProgress.toString())})}__name(setElementsProgress,"setElementsProgress");function setActiveContentClasses(index,elements){elements.forEach((el,i)=>{i>index?(el.classList.remove("current","previous"),el.classList.add("next")):i<index?(el.classList.remove("current","next"),el.classList.add("previous")):(el.classList.remove("previous","next"),el.classList.add("current"))})}__name(setActiveContentClasses,"setActiveContentClasses");function cloneTemplateContent(templateElement,callback){if(templateElement){const element2=templateElement.content.cloneNode(!0).firstElementChild;return element2&&(callback==null||callback(element2)),element2}return null}__name(cloneTemplateContent,"cloneTemplateContent");function setIntervalOnIntersection(element2,delay,callback,options){let intervalId,isIntersecting=!1,current=0,previous=0,tickerUnsubsribe;const toggleInterval=__name(()=>{clearInterval(intervalId),tickerUnsubsribe==null||tickerUnsubsribe(),options!=null&&options.restartCounter&&(current=0),isIntersecting&&(callback({current,previous,progress:0}),previous=current,tickerUnsubsribe=restartTicker(),intervalId=setInterval(()=>{tickerUnsubsribe==null||tickerUnsubsribe(),current++,callback({current,previous,progress:0}),previous=current,tickerUnsubsribe=restartTicker()},delay))},"toggleInterval"),restartTicker=__name(()=>ticker_index.ticker.subscribe(e=>{const progress=e.timeElapsedSinceSubscription/delay;callback({current,previous,progress})}),"restartTicker"),intersectorUnsubscribe=ticker_index.intersector.subscribe(element2,e=>{isIntersecting=e.isIntersecting,toggleInterval()});return{destroy:__name(()=>{tickerUnsubsribe==null||tickerUnsubsribe(),intersectorUnsubscribe(),clearInterval(intervalId)},"destroy"),restart:__name((currentValue,previousValue)=>{current=currentValue||0,previousValue&&(previous=previousValue),toggleInterval()},"restart"),stop:__name(()=>{clearInterval(intervalId),tickerUnsubsribe==null||tickerUnsubsribe()},"stop")}}__name(setIntervalOnIntersection,"setIntervalOnIntersection");exports.getElementAttributesAdvanced=attributes.getElementAttributesAdvanced;exports.parseAttribute=attributes.parseAttribute;exports.parseAttributeValue=attributes.parseAttributeValue;exports.parseAttributeValueAdvanced=attributes.parseAttributeValueAdvanced;exports.camelToKebab=Store.camelToKebab;exports.capitalize=Store.capitalize;exports.declension=Store.declension;exports.decodeHtmlEntities=Store.decodeHtmlEntities;exports.generateId=Store.generateId;exports.getRandomChar=Store.getRandomChar;exports.isBrowser=Store.isBrowser;exports.isUppercase=Store.isUppercase;exports.kebabToCamel=Store.kebabToCamel;exports.snakeToDotted=Store.snakeToDotted;exports.toPascalCase=Store.toPascalCase;exports.uncapitalize=Store.uncapitalize;exports.contain=canvas.contain;exports.cover=canvas.cover;exports.fixPosition=canvas.fixPosition;exports.measureText=canvas.measureText;exports.getPointerPosition=coordinates.getPointerPosition;exports.normalize=coordinates.normalize;exports.screenToCartesian=coordinates.screenToCartesian;exports.whenDefined=customElements.whenDefined;exports.createScriptElement=dom.createScriptElement;exports.deepQuerySelectorAll=dom.deepQuerySelectorAll;exports.excludeElements=dom.excludeElements;exports.findParentElement=dom.findParentElement;exports.findScrollParentElement=dom.findScrollParentElement;exports.getAllParentElements=dom.getAllParentElements;exports.getElement=dom.getElement;exports.intersectElements=dom.intersectElements;exports.traverseNodes=dom.traverseNodes;exports.traverseShadowRoots=dom.traverseShadowRoots;exports.easeInCubic=Tweened.easeInCubic;exports.easeInExpo=Tweened.easeInExpo;exports.easeInOutCubic=Tweened.easeInOutCubic;exports.easeInOutExpo=Tweened.easeInOutExpo;exports.easeInOutQuad=Tweened.easeInOutQuad;exports.easeInOutQuart=Tweened.easeInOutQuart;exports.easeInOutQuint=Tweened.easeInOutQuint;exports.easeInQuad=Tweened.easeInQuad;exports.easeInQuart=Tweened.easeInQuart;exports.easeInQuint=Tweened.easeInQuint;exports.easeOutCubic=Tweened.easeOutCubic;exports.easeOutExpo=Tweened.easeOutExpo;exports.easeOutQuad=Tweened.easeOutQuad;exports.easeOutQuart=Tweened.easeOutQuart;exports.easeOutQuint=Tweened.easeOutQuint;exports.easeOvershoot=Tweened.easeOvershoot;exports.easings=Tweened.easings;exports.linear=Tweened.linear;exports.isElementVisible=element.isElementVisible;exports.dispatchEvent=events.dispatchEvent;exports.createJSONAndSave=file.createJSONAndSave;exports.downloadURI=file.downloadURI;exports.debounce=_function.debounce;exports.throttle=_function.throttle;exports.setupDrag=gestures.setupDrag;exports.createStylesheet=stylesheet.createStylesheet;exports.styleToString=stylesheet.styleToString;exports.getCumulativeOffsetLeft=layout.getCumulativeOffsetLeft;exports.getCumulativeOffsetTop=layout.getCumulativeOffsetTop;exports.getCumulativePosition=layout.getCumulativePosition;exports.getStickyOffset=layout.getStickyOffset;exports.requestLoadingCallback=loading.requestLoadingCallback;exports.calculateDistance=math.calculateDistance;exports.calculateDistanceWithRadius=math.calculateDistanceWithRadius;exports.clamp=math.clamp;exports.damp=math.damp;exports.lerp=math.lerp;exports.mapRange=math.mapRange;exports.round=math.round;exports.smootherstep=math.smootherstep;exports.smoothstep=math.smoothstep;exports.step=math.step;exports.formatMediaDuration=metadata.formatMediaDuration;exports.ACTION_CREATE=morph.ACTION_CREATE;exports.ACTION_PRESERVE=morph.ACTION_PRESERVE;exports.ACTION_REMOVE=morph.ACTION_REMOVE;exports.ACTION_REMOVE_ATTR=morph.ACTION_REMOVE_ATTR;exports.ACTION_REPLACE=morph.ACTION_REPLACE;exports.ACTION_SET_ATTR=morph.ACTION_SET_ATTR;exports.ACTION_SKIP=morph.ACTION_SKIP;exports.ACTION_UPDATE=morph.ACTION_UPDATE;exports.NODE_TYPE_COMMENT=morph.NODE_TYPE_COMMENT;exports.NODE_TYPE_DOCUMENT=morph.NODE_TYPE_DOCUMENT;exports.NODE_TYPE_ELEMENT=morph.NODE_TYPE_ELEMENT;exports.NODE_TYPE_TEXT=morph.NODE_TYPE_TEXT;exports.diff=morph.diff;exports.morph=morph.morph;exports.patch=morph.patch;exports.beautifyNumber=number.beautifyNumber;exports.loopNumber=number.loopNumber;exports.preciseNumber=number.preciseNumber;exports.roundNumberTo=number.roundNumberTo;exports.toStep=number.toStep;exports.cloneDeep=object.cloneDeep;exports.compareObjects=object.compareObjects;exports.isESClass=object.isESClass;exports.isNullish=object.isNullish;exports.isObject=object.isObject;exports.mergeDeep=object.mergeDeep;exports.mixin=object.mixin;exports.omit=object.omit;exports.pick=object.pick;exports.nullishCoalescing=polyfills.nullishCoalescing;exports.requestIdleCallback=polyfills.requestIdleCallback;exports.wait=promises.wait;exports.scrollToElement=scroll.scrollToElement;exports.scrollToElementTweened=scroll.scrollToElementTweened;exports.getElementTransitionDurationMS=style.getElementTransitionDurationMS;exports.getElementTransitionDurationS=style.getElementTransitionDurationS;exports.changeHistory=url.changeHistory;exports.isLocalUrl=url.isLocalUrl;exports.normalizeBase=url.normalizeBase;exports.normalizeRelativeURLs=url.normalizeRelativeURLs;exports.normalizeURL=url.normalizeURL;exports.parseSearchParameters=url.parseSearchParameters;exports.searchParamsObjectToString=url.searchParamsObjectToString;exports.searchParamsToObject=url.searchParamsToObject;exports.splitPath=url.splitPath;exports.updateSearchParameter=url.updateSearchParameter;exports.cloneTemplateContent=cloneTemplateContent;exports.copyTextToClipboard=copyTextToClipboard;exports.decode=decode;exports.distributeProgress=distributeProgress;exports.dotCircleCollision=dotCircleCollision;exports.dotPolygonCollision=dotPolygonCollision;exports.dotRectCollision=dotRectCollision;exports.encode=encode;exports.formatBytes=formatBytes;exports.getRootVariables=getRootVariables;exports.getStyleRuleActualValue=getStyleRuleActualValue;exports.insert=insert;exports.rgbToHex=rgbToHex;exports.setActiveContentClasses=setActiveContentClasses;exports.setElementsProgress=setElementsProgress;exports.setIntervalOnIntersection=setIntervalOnIntersection;exports.shiftArray=shiftArray;exports.splitProgress=splitProgress;exports.transliterate=transliterate;exports.tryCreateHrefFromContact=tryCreateHrefFromContact;
|
package/lib/utils/index.js
CHANGED
|
@@ -6,7 +6,7 @@ import { a as a2, c as c2, f as f2, m } from "../canvas-DsglKco1.js";
|
|
|
6
6
|
import { g as g3, n, s as s2 } from "../coordinates--JG1U6kQ.js";
|
|
7
7
|
import { w } from "../custom-elements-HEMuF7yH.js";
|
|
8
8
|
import { c as c3, h as h2, e as e2, b as b3, f as f3, a as a3, g as g4, i as i2, t as t2, d as d2 } from "../dom-D8D-_9ty.js";
|
|
9
|
-
import { d as d3, o, g as g5, a as a4, c as c4, j, n as n2, e as e3, h as h3, k as k2, f as f4, p as p2, b as b4, i as i3, m as m2, q, l } from "../Tweened-
|
|
9
|
+
import { d as d3, o, g as g5, a as a4, c as c4, j, n as n2, e as e3, h as h3, k as k2, f as f4, p as p2, b as b4, i as i3, m as m2, q, r, l } from "../Tweened-CZeS3EqK.js";
|
|
10
10
|
import { i as i4 } from "../element-DKw5H-Tu.js";
|
|
11
11
|
import { d as d4 } from "../events-Ds-TuvYW.js";
|
|
12
12
|
import { c as c5, d as d5 } from "../file-DwQs6bB6.js";
|
|
@@ -14,15 +14,15 @@ import { d as d6, t as t3 } from "../function-UmbPrOHm.js";
|
|
|
14
14
|
import { s as s3 } from "../gestures-DmKKNnh4.js";
|
|
15
15
|
import { c as c6, s as s4 } from "../stylesheet-GIzIJ_Xj.js";
|
|
16
16
|
import { a as a5, b as b5, c as c7, g as g6 } from "../layout-DxOCR4qe.js";
|
|
17
|
-
import { r } from "../loading-BYWPyUhc.js";
|
|
18
|
-
import { e as e4, f as f5, c as c8, d as d7, l as l2, m as m3, r as
|
|
17
|
+
import { r as r2 } from "../loading-BYWPyUhc.js";
|
|
18
|
+
import { e as e4, f as f5, c as c8, d as d7, l as l2, m as m3, r as r3, b as b6, a as a6, s as s5 } from "../math-r8V23YFe.js";
|
|
19
19
|
import { f as f6 } from "../metadata-BNdkmeeD.js";
|
|
20
20
|
import { A, k as k3, e as e5, i as i5, f as f7, h as h4, j as j2, g as g7, b as b7, c as c9, N, a as a7, d as d8, m as m4, p as p3 } from "../morph-HSpXYm3O.js";
|
|
21
|
-
import { b as b8, l as l3, p as p4, r as
|
|
21
|
+
import { b as b8, l as l3, p as p4, r as r4, t as t4 } from "../number-DiVt2xnh.js";
|
|
22
22
|
import { c as c10, d as d9, i as i6, b as b9, a as a8, m as m5, e as e6, o as o2, p as p5 } from "../object-CiIdEmJx.js";
|
|
23
|
-
import { n as n3, r as
|
|
23
|
+
import { n as n3, r as r5 } from "../polyfills-CG1XJNia.js";
|
|
24
24
|
import { w as w2 } from "../promises-BsIKOEDq.js";
|
|
25
|
-
import { s as s6, a as a9 } from "../scroll-
|
|
25
|
+
import { s as s6, a as a9 } from "../scroll-D1MT0QMY.js";
|
|
26
26
|
import { g as g8, a as a10 } from "../style-DBoQWK0d.js";
|
|
27
27
|
import { i as intersector, t as ticker } from "../index-DAG0CtYo.js";
|
|
28
28
|
import { d as d10, i as i7, a as a11, b as b10, n as n4, p as p6, s as s7, e as e7, c as c11, u as u2 } from "../url-DTxLpq5m.js";
|
|
@@ -94,12 +94,12 @@ function dotPolygonCollision(dot, polygon) {
|
|
|
94
94
|
return inside;
|
|
95
95
|
}
|
|
96
96
|
__name(dotPolygonCollision, "dotPolygonCollision");
|
|
97
|
-
function rgbToHex(
|
|
97
|
+
function rgbToHex(r6, g9, b11) {
|
|
98
98
|
const toHex = /* @__PURE__ */ __name((c12) => {
|
|
99
99
|
const hex = c12.toString(16);
|
|
100
100
|
return hex.length === 1 ? "0" + hex : hex;
|
|
101
101
|
}, "toHex");
|
|
102
|
-
return `#${toHex(
|
|
102
|
+
return `#${toHex(r6)}${toHex(g9)}${toHex(b11)}`;
|
|
103
103
|
}
|
|
104
104
|
__name(rgbToHex, "rgbToHex");
|
|
105
105
|
function getStyleRuleActualValue(rule, name) {
|
|
@@ -203,6 +203,29 @@ function transliterate(text, options = {}) {
|
|
|
203
203
|
return lowercase && (result = result.toLowerCase()), result = result.replace(/[^\w\-]+/g, separator).replace(new RegExp(`\\${separator}+`, "g"), separator).replace(new RegExp(`(^\\${separator}|\\${separator}$)`, "g"), ""), maxLength > 0 && result.length > maxLength && (result = result.substring(0, maxLength).replace(new RegExp(`\\${separator}[^\\${separator}]*$`), "")), result;
|
|
204
204
|
}
|
|
205
205
|
__name(transliterate, "transliterate");
|
|
206
|
+
function distributeProgress(progress, ...items) {
|
|
207
|
+
if (items.length === 0)
|
|
208
|
+
return [];
|
|
209
|
+
if (items.some((item) => item.weight < 0))
|
|
210
|
+
throw new Error("Все веса должны быть неотрицательными числами");
|
|
211
|
+
const totalWeight = items.map((item) => item.weight).reduce((sum, weight) => sum + weight, 0);
|
|
212
|
+
if (totalWeight === 0)
|
|
213
|
+
return items.forEach((item) => {
|
|
214
|
+
var _a;
|
|
215
|
+
return (_a = item.callback) == null ? void 0 : _a.call(item, 0);
|
|
216
|
+
}), Array(items.length).fill(0);
|
|
217
|
+
const distributed = [];
|
|
218
|
+
let accumulatedProgress = 0;
|
|
219
|
+
for (let i8 = 0; i8 < items.length; i8++) {
|
|
220
|
+
const { weight, callback } = items[i8], itemShare = weight / totalWeight, itemStart = accumulatedProgress, itemEnd = accumulatedProgress + itemShare;
|
|
221
|
+
let itemProgress = 0;
|
|
222
|
+
progress >= itemEnd ? itemProgress = 1 : progress > itemStart && (itemProgress = (progress - itemStart) / itemShare);
|
|
223
|
+
const finalProgress = Math.min(1, Math.max(0, itemProgress));
|
|
224
|
+
distributed.push(finalProgress), callback == null || callback(finalProgress), accumulatedProgress = itemEnd;
|
|
225
|
+
}
|
|
226
|
+
return distributed;
|
|
227
|
+
}
|
|
228
|
+
__name(distributeProgress, "distributeProgress");
|
|
206
229
|
function splitProgress(progress, items, initialItemsWithFullProgress = 0) {
|
|
207
230
|
const totalItems = items - initialItemsWithFullProgress, splitted = [];
|
|
208
231
|
for (let item = 0; item < items; item++) {
|
|
@@ -314,6 +337,7 @@ export {
|
|
|
314
337
|
h2 as deepQuerySelectorAll,
|
|
315
338
|
d8 as diff,
|
|
316
339
|
d4 as dispatchEvent,
|
|
340
|
+
distributeProgress,
|
|
317
341
|
dotCircleCollision,
|
|
318
342
|
dotPolygonCollision,
|
|
319
343
|
dotRectCollision,
|
|
@@ -333,7 +357,8 @@ export {
|
|
|
333
357
|
b4 as easeOutQuad,
|
|
334
358
|
i3 as easeOutQuart,
|
|
335
359
|
m2 as easeOutQuint,
|
|
336
|
-
q as
|
|
360
|
+
q as easeOvershoot,
|
|
361
|
+
r as easings,
|
|
337
362
|
encode,
|
|
338
363
|
e2 as excludeElements,
|
|
339
364
|
b3 as findParentElement,
|
|
@@ -386,11 +411,11 @@ export {
|
|
|
386
411
|
p3 as patch,
|
|
387
412
|
p5 as pick,
|
|
388
413
|
p4 as preciseNumber,
|
|
389
|
-
|
|
390
|
-
|
|
414
|
+
r5 as requestIdleCallback,
|
|
415
|
+
r2 as requestLoadingCallback,
|
|
391
416
|
rgbToHex,
|
|
392
|
-
|
|
393
|
-
|
|
417
|
+
r3 as round,
|
|
418
|
+
r4 as roundNumberTo,
|
|
394
419
|
s2 as screenToCartesian,
|
|
395
420
|
s6 as scrollToElement,
|
|
396
421
|
a9 as scrollToElementTweened,
|
package/lib/utils/progress.d.ts
CHANGED
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
export declare function distributeProgress(progress: number, ...items: Array<{
|
|
2
|
+
weight: number;
|
|
3
|
+
callback?: (progress: number) => void;
|
|
4
|
+
}>): number[];
|
|
1
5
|
export declare function splitProgress(progress: number, items: number, initialItemsWithFullProgress?: number): number[];
|
|
2
6
|
export declare function setElementsProgress(progress: number, elements: Array<HTMLElement>, initialItemsWithFullProgress?: number): void;
|
|
3
7
|
export declare function setActiveContentClasses(index: number, elements: Array<HTMLElement>): void;
|