@ssgoi/core 6.0.0 → 6.1.0
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/README.md +5 -6
- package/dist/animation/animation.d.ts +18 -0
- package/dist/animation/animation.d.ts.map +1 -1
- package/dist/animation/host-animation.d.ts +2 -0
- package/dist/animation/host-animation.d.ts.map +1 -1
- package/dist/animation/multi-animation.d.ts +20 -4
- package/dist/animation/multi-animation.d.ts.map +1 -1
- package/dist/animation/web-animation.d.ts +2 -0
- package/dist/animation/web-animation.d.ts.map +1 -1
- package/dist/index.cjs +10 -10
- package/dist/index.js +998 -561
- package/dist/internal.cjs +1 -1
- package/dist/internal.js +208 -201
- package/dist/multi-animation-CnxqLEka.js +322 -0
- package/dist/multi-animation-Dw2JTJI2.cjs +1 -0
- package/dist/ssgoi-transition/create-ssgoi-transition-context.d.ts.map +1 -1
- package/dist/transitions/axis/index.d.ts +43 -0
- package/dist/transitions/axis/index.d.ts.map +1 -0
- package/dist/transitions/axis/provider/index.d.ts +8 -0
- package/dist/transitions/axis/provider/index.d.ts.map +1 -0
- package/dist/transitions/axis/provider/x/fluid.d.ts +3 -0
- package/dist/transitions/axis/provider/x/fluid.d.ts.map +1 -0
- package/dist/transitions/axis/provider/x/index.d.ts +3 -0
- package/dist/transitions/axis/provider/x/index.d.ts.map +1 -0
- package/dist/transitions/axis/provider/x/snappy.d.ts +3 -0
- package/dist/transitions/axis/provider/x/snappy.d.ts.map +1 -0
- package/dist/transitions/axis/provider/y.d.ts +3 -0
- package/dist/transitions/axis/provider/y.d.ts.map +1 -0
- package/dist/transitions/axis/provider/z.d.ts +3 -0
- package/dist/transitions/axis/provider/z.d.ts.map +1 -0
- package/dist/transitions/axis/transition.d.ts +5 -0
- package/dist/transitions/axis/transition.d.ts.map +1 -0
- package/dist/transitions/axis/types.d.ts +52 -0
- package/dist/transitions/axis/types.d.ts.map +1 -0
- package/dist/transitions/blind/index.d.ts +10 -1
- package/dist/transitions/blind/index.d.ts.map +1 -1
- package/dist/transitions/drill/index.d.ts +37 -6
- package/dist/transitions/drill/index.d.ts.map +1 -1
- package/dist/transitions/drill/types.d.ts +10 -0
- package/dist/transitions/drill/types.d.ts.map +1 -1
- package/dist/transitions/fade/index.d.ts +13 -3
- package/dist/transitions/fade/index.d.ts.map +1 -1
- package/dist/transitions/fade/types.d.ts +14 -0
- package/dist/transitions/fade/types.d.ts.map +1 -0
- package/dist/transitions/film/index.d.ts +13 -3
- package/dist/transitions/film/index.d.ts.map +1 -1
- package/dist/transitions/film/types.d.ts +16 -0
- package/dist/transitions/film/types.d.ts.map +1 -0
- package/dist/transitions/hero/index.d.ts +14 -3
- package/dist/transitions/hero/index.d.ts.map +1 -1
- package/dist/transitions/hero/types.d.ts +12 -0
- package/dist/transitions/hero/types.d.ts.map +1 -0
- package/dist/transitions/index.d.ts +1 -0
- package/dist/transitions/index.d.ts.map +1 -1
- package/dist/transitions/jaemin/index.d.ts +13 -3
- package/dist/transitions/jaemin/index.d.ts.map +1 -1
- package/dist/transitions/jaemin/types.d.ts +9 -0
- package/dist/transitions/jaemin/types.d.ts.map +1 -0
- package/dist/transitions/rotate/index.d.ts +12 -3
- package/dist/transitions/rotate/index.d.ts.map +1 -1
- package/dist/transitions/rotate/types.d.ts +9 -0
- package/dist/transitions/rotate/types.d.ts.map +1 -0
- package/dist/transitions/scroll/index.d.ts +7 -7
- package/dist/transitions/scroll/index.d.ts.map +1 -1
- package/dist/transitions/sheet/index.d.ts +38 -6
- package/dist/transitions/sheet/index.d.ts.map +1 -1
- package/dist/transitions/sheet/types.d.ts +10 -0
- package/dist/transitions/sheet/types.d.ts.map +1 -1
- package/dist/transitions/slide/index.d.ts +13 -3
- package/dist/transitions/slide/index.d.ts.map +1 -1
- package/dist/transitions/slide/types.d.ts +10 -0
- package/dist/transitions/slide/types.d.ts.map +1 -0
- package/dist/transitions/strip/index.d.ts +13 -3
- package/dist/transitions/strip/index.d.ts.map +1 -1
- package/dist/transitions/strip/types.d.ts +9 -0
- package/dist/transitions/strip/types.d.ts.map +1 -0
- package/dist/transitions/utils.d.ts +16 -0
- package/dist/transitions/utils.d.ts.map +1 -1
- package/dist/transitions/zoom/index.d.ts +17 -3
- package/dist/transitions/zoom/index.d.ts.map +1 -1
- package/dist/transitions/zoom/provider/blur.d.ts +14 -0
- package/dist/transitions/zoom/provider/blur.d.ts.map +1 -0
- package/dist/transitions/zoom/provider/expand.d.ts +6 -1
- package/dist/transitions/zoom/provider/expand.d.ts.map +1 -1
- package/dist/transitions/zoom/provider/index.d.ts +10 -1
- package/dist/transitions/zoom/provider/index.d.ts.map +1 -1
- package/dist/transitions/zoom/provider/static.d.ts +6 -1
- package/dist/transitions/zoom/provider/static.d.ts.map +1 -1
- package/dist/transitions/zoom/transition.d.ts +3 -3
- package/dist/transitions/zoom/transition.d.ts.map +1 -1
- package/dist/transitions/zoom/types.d.ts +78 -3
- package/dist/transitions/zoom/types.d.ts.map +1 -1
- package/dist/transitions/zoom/zoom-element.d.ts +2 -2
- package/dist/transitions/zoom/zoom-element.d.ts.map +1 -1
- package/dist/types/index.d.ts +3 -4
- package/dist/types/index.d.ts.map +1 -1
- package/package.json +1 -1
- package/dist/multi-animation-B_Hl1HEU.cjs +0 -1
- package/dist/multi-animation-CST6aZ8y.js +0 -276
package/dist/internal.cjs
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";var ft=Object.defineProperty;var dt=(t,n,e)=>n in t?ft(t,n,{enumerable:!0,configurable:!0,writable:!0,value:e}):t[n]=e;var W=(t,n,e)=>dt(t,typeof n!="symbol"?n+"":n,e);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const H=require("./multi-animation-B_Hl1HEU.cjs");class it extends H.Animation{constructor(){super(...arguments);W(this,"child",null);W(this,"_state","idle");W(this,"_settled",!1);W(this,"listeners",new Set)}attach(e){const o=this.child;if(this.child=e,this._settled=!1,o){const m=o.getPose();o.complete(),e.matchInto(m)}e.playbackRate=this.playbackRate;const l=e.onComplete;e.onComplete=()=>{l==null||l(),this.child===e&&(this.child=null,this._state="idle",this._settled=!0),this.notify()};const f=e.onUpdate;e.onUpdate=m=>{var w;f==null||f(m),(w=this.onUpdate)==null||w.call(this,m),this.notify()},this._state==="paused"?e.pause():this._state==="reversing"?e.reverse():(this._state="playing",e.play()),this.notify()}play(){var e;this._state="playing",this._settled=!1,(e=this.child)==null||e.play(),this.notify()}reverse(){var e;this._state="reversing",this._settled=!1,(e=this.child)==null||e.reverse(),this.notify()}pause(){var e;this._state="paused",(e=this.child)==null||e.pause(),this.notify()}complete(){var e;(e=this.child)==null||e.complete(),this.notify()}get isAnimating(){var e;return((e=this.child)==null?void 0:e.isAnimating)??!1}get isPaused(){return this._state==="paused"}get isComplete(){return this._settled&&!this.child}get isReversing(){var e;return((e=this.child)==null?void 0:e.isReversing)??this._state==="reversing"}get playbackRate(){return super.playbackRate}set playbackRate(e){super.playbackRate=e,this.child&&(this.child.playbackRate=e),this.notify()}getPose(){var e;return((e=this.child)==null?void 0:e.getPose())??[]}getTimeline(){var e;return((e=this.child)==null?void 0:e.getTimeline())??[]}matchInto(e){var o;(o=this.child)==null||o.matchInto(e)}get activeChild(){return this.child}subscribe(e){return this.listeners.add(e),()=>{this.listeners.delete(e)}}notify(){for(const e of this.listeners)e()}}const mt=(t,n)=>{var e;t.style.position="absolute",t.style.width="100%",t.style.top=`${-1*(((e=n==null?void 0:n.scrollOffset)==null?void 0:e.y)??0)}px`,t.style.left="0"},tt=new Set(["auto","scroll","overlay"]),ht=t=>{let n=t.parentElement;for(;n&&n!==document.body;){const e=window.getComputedStyle(n);if(tt.has(e.overflowY)||tt.has(e.overflowX))return n;n=n.parentElement}return document.documentElement},gt=t=>{let n=t.parentElement;for(;n&&n!==document.body;){const e=window.getComputedStyle(n).position;if(e==="relative"||e==="absolute"||e==="fixed"||e==="sticky")return n;n=n.parentElement}return document.body};function yt(t){const n=Object.keys(t);return Promise.all(n.map(e=>t[e])).then(e=>{const o={};return n.forEach((l,f)=>{o[l]=e[f]}),o})}function vt(t){const n=t.filter(e=>e.symmetric).map(e=>({from:e.to,to:e.from,transition:e.transition}));return[...t,...n]}function X(t,n){if(n==="*")return!0;if(n.endsWith("/*")){const e=n.slice(0,-1);return t.startsWith(e)&&t.length>e.length}return t===n}function pt(t,n,e){for(const o of e)if(X(t,o.from)&&X(n,o.to))return o.transition;for(const o of e)if((o.from==="*"||X(t,o.from))&&(o.to==="*"||X(n,o.to)))return o.transition;return null}const Et=768,wt=10,St=10;function bt(t={}){const{preserveScroll:n=i=>i}=t,e=typeof n=="function"?n:()=>n;let o=null,l=!1,f=!1;const m=()=>{const i=(o==null?void 0:o.clientWidth)??0,a=i>0?i:typeof window<"u"?window.innerWidth:0;return a>0&&a<Et},w=()=>(f||(l=m(),f=!0),l),E=i=>{var y;const a=e(w());if(a===!1)return{preserves:!1,shared:!1,storageKey:`path:${i}`};if(a===!0)return{preserves:!0,shared:!1,storageKey:`path:${i}`};const g=((y=a.exclude)==null?void 0:y.some(M=>X(i,M)))??!1,p=!g&&!!a.key;return{preserves:!g,shared:p,storageKey:p?`shared:${a.key}`:`path:${i}`}},R=i=>E(i).preserves;let x=null;const h=new Map;let A=null,P=!1,O=0;const D=()=>{o&&A&&!P&&h.set(E(A).storageKey,{x:o.scrollLeft,y:o.scrollTop})},I=i=>{if(!o)return;const a=E(i);if(a.preserves&&a.shared&&!h.has(a.storageKey))return;const g=a.preserves&&h.has(a.storageKey)?h.get(a.storageKey):{x:0,y:0};let p=0;const y=()=>{if(!o)return;o.scrollTo({top:g.y,left:g.x}),!(Math.abs(o.scrollTop-g.y)<1&&Math.abs(o.scrollLeft-g.x)<1)&&p<wt&&(p++,requestAnimationFrame(y))};requestAnimationFrame(y)};return{initializeContext:(i,a)=>{P=!0;const g=++O;x=i,o||(o=ht(i),l=m(),f=!0,typeof ResizeObserver<"u"&&new ResizeObserver(()=>{l=m()}).observe(o),(o===document.documentElement?window:o).addEventListener("scroll",D,{passive:!0})),A=a,I(a);let p=0;const y=()=>{g===O&&(p++,p>=St?P=!1:requestAnimationFrame(y))};requestAnimationFrame(y)},calculateScrollOffset:(i,a)=>{const g=i?E(i).storageKey:null,p=g&&h.has(g)?h.get(g):{x:0,y:0},y=a?E(a):null,M=y!=null&&y.preserves?y.storageKey:null,r=M&&h.has(M)?h.get(M):{x:0,y:0};return{x:-r.x+p.x,y:-r.y+p.y}},evictScrollPosition:i=>{h.delete(E(i).storageKey)},shouldPreserve:R,getScrollContainer:()=>o,getPositionedParentElement:()=>x?gt(x):document.body,getScrollPosition:i=>{const a=i?E(i).storageKey:null;return a&&h.has(a)?h.get(a):{x:0,y:0}}}}const et=30,nt=8,ot=1.2,rt=30,Tt=600;function Rt(){let t=null,n=!1,e=!1,o=null,l=null,f=!1;const m=(c,u)=>{for(let d=0;d<c.length;d++){const v=c.item(d);if(v&&v.identifier===u)return v}return null},w=()=>{o!==null&&(clearTimeout(o),o=null)},E=()=>{l!==null&&(clearTimeout(l),l=null)},R=()=>{n=!0,e=!0,w(),E(),o=setTimeout(()=>{n=!1,e=!1,o=null},Tt)},x=c=>{if(c.touches.length!==1){t=null;return}const u=c.touches.item(0);if(!u){t=null;return}const d=window.innerWidth,v=u.clientX<=et,L=u.clientX>=d-et;if(!v&&!L){t=null;return}t={identifier:u.identifier,startX:u.clientX,startY:u.clientY,fromLeftEdge:v,moved:!1}},h=c=>{if(!t)return;if(c.touches.length!==1){t=null;return}const u=m(c.touches,t.identifier);if(!u){t=null;return}const d=u.clientX-t.startX,v=u.clientY-t.startY,L=Math.abs(d),i=Math.abs(v);if(i>nt&&i>L*ot){t=null;return}const a=t.fromLeftEdge?d>0:d<0;L>nt&&L>i*ot&&a&&(t.moved=!0)},A=c=>{if(!t)return;const u=m(c.changedTouches,t.identifier);if(!u){t=null;return}const d=u.clientX-t.startX,v=t.fromLeftEdge?d>0:d<0;if(t.moved&&v&&Math.abs(d)>=rt){R(),t=null;return}t.moved&&Math.abs(d)>=rt&&R(),t=null},P=()=>{t&&(t.moved&&R(),t=null)};return{initialize:()=>{if(typeof window>"u"||f)return;f=!0;const c={passive:!0,capture:!0};window.addEventListener("touchstart",x,c),window.addEventListener("touchmove",h,c),window.addEventListener("touchend",A,c),window.addEventListener("touchcancel",P,c)},destroy:()=>{if(typeof window>"u"||!f)return;f=!1;const c={capture:!0};window.removeEventListener("touchstart",x,c),window.removeEventListener("touchmove",h,c),window.removeEventListener("touchend",A,c),window.removeEventListener("touchcancel",P,c),w(),E(),t=null,n=!1,e=!1},isSwipeBack:()=>{const c=n||e;return c&&w(),c},onPageEnter:()=>{n=!1,w(),E(),l=setTimeout(()=>{e=!1,l=null},0)}}}function At(){let t=null;function n(){var o,l;t&&((o=t.outResolve)==null||o.call(t,null),(l=t.inResolve)==null||l.call(t,null),t=null)}function e(){if(t!=null&&t.from&&(t!=null&&t.to)&&(t!=null&&t.outResolve)&&(t!=null&&t.inResolve)){if(t.from===t.to){n();return}const o={from:t.from,to:t.to};t.outResolve(o),t.inResolve(o),t=null}}return{trigger(o,l){var m;l==="out"&&(t==null?void 0:t.to)===o&&!t.from&&((m=t.inResolve)==null||m.call(t,null),t={}),t&&(l==="out"&&t.from&&t.from!==o||l==="in"&&t.to&&t.to!==o)&&n(),t||(t={}),l==="out"?t.from=o:t.to=o},get(o){return new Promise(l=>{t||(t={}),o==="out"?t.outResolve=l:t.inResolve=l,e()})}}}const B=new Map;let z=null,st=!1;function lt(t){if(t instanceof HTMLElement&&B.has(t)){const n=B.get(t);B.delete(t),queueMicrotask(n)}for(const n of Array.from(t.childNodes))lt(n)}function Pt(){if(st||typeof document>"u")return;st=!0,z=new MutationObserver(n=>{for(const e of n)for(const o of Array.from(e.removedNodes))lt(o)});const t=()=>{z==null||z.observe(document.body,{childList:!0,subtree:!0})};document.body?t():document.addEventListener("DOMContentLoaded",t,{once:!0})}function xt(t,n){return Pt(),B.set(t,n),()=>{B.delete(t)}}function Lt(t){return Array.isArray(t)}function ct(t){const n=[];for(const e of t)Lt(e)?n.push(...ct(e)):n.push(e);return n}function Mt(t,n={}){const{transitions:e=[],defaultTransition:o,middleware:l=(r,s)=>({from:r,to:s}),preserveScroll:f=r=>r}=t,m=n.host??new it,w=At(),E=vt(ct(e)),R=Rt();R.initialize();const{initializeContext:x,calculateScrollOffset:h,evictScrollPosition:A,shouldPreserve:P,getScrollContainer:O,getPositionedParentElement:D,getScrollPosition:I}=bt({preserveScroll:f});let k=null,c=null;const u=new WeakMap,d=r=>{u.set(r,{parent:r.parentElement,nextSibling:r.nextElementSibling})},v=r=>{const s=u.get(r);return s||{parent:r.parentElement,nextSibling:r.nextElementSibling}},L=(r,s,b,S,F)=>{const K=S.element,j=F.element,{parent:_,nextSibling:C}=S.parent?{parent:S.parent,nextSibling:S.nextSibling}:v(K),T=K.cloneNode(!0),q={scrollOffset:h(s,b),from:{scroll:I(s)},to:{scroll:I(b)},get scrollingElement(){return O()||document.documentElement},get positionedParent(){return D()}};mt(T,q),P(s)||A(s);const Z=Promise.resolve(T),J=Promise.resolve(j),Q=[],at={from:Z,to:J,context:q,createElement:((Y,$="div")=>{const N=document.createElement($);return N.setAttribute("data-ssgoi-id",Y),Q.push(N),N})},ut=Promise.resolve(r.prepare?r.prepare(at):{});yt({from:Z,to:J,extras:ut}).then(({from:Y,to:$,extras:N})=>{_&&(C&&_.contains(C)?_.insertBefore(T,C):_.appendChild(T));const G=r.animation({from:Y,to:$,context:q,...N}),U=G.onComplete;G.onComplete=()=>{U==null||U(),T.parentElement&&T.parentElement.removeChild(T);for(const V of Q)V.parentElement&&V.parentElement.removeChild(V)},m.attach(G)})},i=(r,s)=>{const b=R.isSwipeBack();w.trigger(r,s),w.get(s).then(S=>{if(s==="in"&&R.onPageEnter(),!S)return;if(b){s==="out"&&S.from&&!P(S.from)&&A(S.from),k=null,c=null;return}if(s!=="in")return;const{from:F,to:K}=l(S.from,S.to),_=pt(F,K,E)??o,C=k,T=c;k=null,c=null,!(!_||!C||!T)&&L(_,F,K,C,T)})},a=(r,s)=>{const b=v(r);k={element:r,parent:b.parent,nextSibling:b.nextSibling},i(s,"out")},g=new WeakSet,p=(r,s)=>{g.has(s)||(g.add(s),d(s),x(s,r),c={element:s,parent:s.parentElement,nextSibling:s.nextElementSibling},i(r,"in"),xt(s,()=>a(s,r)))},y=new Map;return{register:p,refFor:r=>{let s=y.get(r);return s||(s=b=>{b&&p(r,b)},y.set(r,s)),s}}}exports.Animation=H.Animation;exports.MultiAnimation=H.MultiAnimation;exports.WebAnimation=H.WebAnimation;exports.HostAnimation=it;exports.createSggoiTransitionContext=Mt;
|
|
1
|
+
"use strict";var ue=Object.defineProperty;var fe=(e,n,t)=>n in e?ue(e,n,{enumerable:!0,configurable:!0,writable:!0,value:t}):e[n]=t;var W=(e,n,t)=>fe(e,typeof n!="symbol"?n+"":n,t);Object.defineProperty(exports,Symbol.toStringTag,{value:"Module"});const H=require("./multi-animation-Dw2JTJI2.cjs");class se extends H.Animation{constructor(){super(...arguments);W(this,"child",null);W(this,"_state","idle");W(this,"_settled",!1);W(this,"listeners",new Set)}attach(t){const o=this.child;if(this.child=t,this._settled=!1,o){const m=o.getPose();o.complete(),t.matchInto(m)}t.playbackRate=this.playbackRate;const c=t.onComplete;t.onComplete=()=>{c==null||c(),this.child===t&&(this.child=null,this._state="idle",this._settled=!0),this.notify()};const d=t.onUpdate;t.onUpdate=m=>{var w;d==null||d(m),(w=this.onUpdate)==null||w.call(this,m),this.notify()},this._state==="paused"?t.pause():this._state==="reversing"?t.reverse():(this._state="playing",t.play()),this.notify()}play(){var t;this._state="playing",this._settled=!1,(t=this.child)==null||t.play(),this.notify()}reverse(){var t;this._state="reversing",this._settled=!1,(t=this.child)==null||t.reverse(),this.notify()}pause(){var t;this._state="paused",(t=this.child)==null||t.pause(),this.notify()}complete(){var t;(t=this.child)==null||t.complete(),this.notify()}get isAnimating(){var t;return((t=this.child)==null?void 0:t.isAnimating)??!1}get isPaused(){return this._state==="paused"}get isComplete(){return this._settled&&!this.child}get isReversing(){var t;return((t=this.child)==null?void 0:t.isReversing)??this._state==="reversing"}get progress(){var t;return((t=this.child)==null?void 0:t.progress)??0}findTimeForProgress(t){var o;return((o=this.child)==null?void 0:o.findTimeForProgress(t))??null}get playbackRate(){return super.playbackRate}set playbackRate(t){super.playbackRate=t,this.child&&(this.child.playbackRate=t),this.notify()}getPose(){var t;return((t=this.child)==null?void 0:t.getPose())??[]}getTimeline(){var t;return((t=this.child)==null?void 0:t.getTimeline())??[]}matchInto(t){var o;(o=this.child)==null||o.matchInto(t)}get activeChild(){return this.child}subscribe(t){return this.listeners.add(t),()=>{this.listeners.delete(t)}}notify(){for(const t of this.listeners)t()}}const de=(e,n)=>{var t;e.style.position="absolute",e.style.width="100%",e.style.top=`${-1*(((t=n==null?void 0:n.scrollOffset)==null?void 0:t.y)??0)}px`,e.style.left="0"},Q=new Set(["auto","scroll","overlay"]),me=e=>{let n=e.parentElement;for(;n&&n!==document.body;){const t=window.getComputedStyle(n);if(Q.has(t.overflowY)||Q.has(t.overflowX))return n;n=n.parentElement}return document.documentElement},he=e=>{let n=e.parentElement;for(;n&&n!==document.body;){const t=window.getComputedStyle(n).position;if(t==="relative"||t==="absolute"||t==="fixed"||t==="sticky")return n;n=n.parentElement}return document.body};function ge(e){const n=Object.keys(e);return Promise.all(n.map(t=>e[t])).then(t=>{const o={};return n.forEach((c,d)=>{o[c]=t[d]}),o})}function ye(e){const n=e.filter(t=>t.symmetric).map(t=>({from:t.to,to:t.from,transition:t.transition}));return[...e,...n]}function F(e,n){if(n==="*")return!0;if(n.endsWith("/*")){const t=n.slice(0,-1);return e.startsWith(t)&&e.length>t.length}return e===n}function pe(e,n,t){for(const o of t)if(F(e,o.from)&&F(n,o.to))return o.transition;for(const o of t)if((o.from==="*"||F(e,o.from))&&(o.to==="*"||F(n,o.to)))return o.transition;return null}const ve=768,Ee=10,we=10;function Se(e={}){const{preserveScroll:n=i=>i}=e,t=typeof n=="function"?n:()=>n;let o=null,c=!1,d=!1;const m=()=>{const i=(o==null?void 0:o.clientWidth)??0,l=i>0?i:typeof window<"u"?window.innerWidth:0;return l>0&&l<ve},w=()=>(d||(c=m(),d=!0),c),y=i=>{var v;const l=t(w());if(l===!1)return{preserves:!1,shared:!1,storageKey:`path:${i}`};if(l===!0)return{preserves:!0,shared:!1,storageKey:`path:${i}`};const g=((v=l.exclude)==null?void 0:v.some(r=>F(i,r)))??!1,p=!g&&!!l.key;return{preserves:!g,shared:p,storageKey:p?`shared:${l.key}`:`path:${i}`}},x=i=>y(i).preserves;let R=null;const h=new Map;let T=null,A=!1,O=0;const I=()=>{o&&T&&!A&&h.set(y(T).storageKey,{x:o.scrollLeft,y:o.scrollTop})},L=i=>{if(!o)return;const l=y(i);if(l.preserves&&l.shared&&!h.has(l.storageKey))return;const g=l.preserves&&h.has(l.storageKey)?h.get(l.storageKey):{x:0,y:0};let p=0;const v=()=>{if(!o)return;o.scrollTo({top:g.y,left:g.x}),!(Math.abs(o.scrollTop-g.y)<1&&Math.abs(o.scrollLeft-g.x)<1)&&p<Ee&&(p++,requestAnimationFrame(v))};requestAnimationFrame(v)};return{initializeContext:(i,l)=>{A=!0;const g=++O;R=i,o||(o=me(i),c=m(),d=!0,typeof ResizeObserver<"u"&&new ResizeObserver(()=>{c=m()}).observe(o),(o===document.documentElement?window:o).addEventListener("scroll",I,{passive:!0})),T=l,L(l);let p=0;const v=()=>{g===O&&(p++,p>=we?A=!1:requestAnimationFrame(v))};requestAnimationFrame(v)},calculateScrollOffset:(i,l)=>{const g=i?y(i).storageKey:null,p=g&&h.has(g)?h.get(g):{x:0,y:0},v=l?y(l):null,r=v!=null&&v.preserves?v.storageKey:null,s=r&&h.has(r)?h.get(r):{x:0,y:0};return{x:-s.x+p.x,y:-s.y+p.y}},evictScrollPosition:i=>{h.delete(y(i).storageKey)},shouldPreserve:x,getScrollContainer:()=>o,getPositionedParentElement:()=>R?he(R):document.body,getScrollPosition:i=>{const l=i?y(i).storageKey:null;return l&&h.has(l)?h.get(l):{x:0,y:0}}}}const ee=30,te=8,ne=1.2,oe=30,be=600;function Te(){let e=null,n=!1,t=!1,o=null,c=null,d=!1;const m=(a,u)=>{for(let f=0;f<a.length;f++){const E=a.item(f);if(E&&E.identifier===u)return E}return null},w=()=>{o!==null&&(clearTimeout(o),o=null)},y=()=>{c!==null&&(clearTimeout(c),c=null)},x=()=>{n=!0,t=!0,w(),y(),o=setTimeout(()=>{n=!1,t=!1,o=null},be)},R=a=>{if(a.touches.length!==1){e=null;return}const u=a.touches.item(0);if(!u){e=null;return}const f=window.innerWidth,E=u.clientX<=ee,P=u.clientX>=f-ee;if(!E&&!P){e=null;return}e={identifier:u.identifier,startX:u.clientX,startY:u.clientY,fromLeftEdge:E,moved:!1}},h=a=>{if(!e)return;if(a.touches.length!==1){e=null;return}const u=m(a.touches,e.identifier);if(!u){e=null;return}const f=u.clientX-e.startX,E=u.clientY-e.startY,P=Math.abs(f),i=Math.abs(E);if(i>te&&i>P*ne){e=null;return}const l=e.fromLeftEdge?f>0:f<0;P>te&&P>i*ne&&l&&(e.moved=!0)},T=a=>{if(!e)return;const u=m(a.changedTouches,e.identifier);if(!u){e=null;return}const f=u.clientX-e.startX,E=e.fromLeftEdge?f>0:f<0;if(e.moved&&E&&Math.abs(f)>=oe){x(),e=null;return}e.moved&&Math.abs(f)>=oe&&x(),e=null},A=()=>{e&&(e.moved&&x(),e=null)};return{initialize:()=>{if(typeof window>"u"||d)return;d=!0;const a={passive:!0,capture:!0};window.addEventListener("touchstart",R,a),window.addEventListener("touchmove",h,a),window.addEventListener("touchend",T,a),window.addEventListener("touchcancel",A,a)},destroy:()=>{if(typeof window>"u"||!d)return;d=!1;const a={capture:!0};window.removeEventListener("touchstart",R,a),window.removeEventListener("touchmove",h,a),window.removeEventListener("touchend",T,a),window.removeEventListener("touchcancel",A,a),w(),y(),e=null,n=!1,t=!1},isSwipeBack:()=>{const a=n||t;return a&&w(),a},onPageEnter:()=>{n=!1,w(),y(),c=setTimeout(()=>{t=!1,c=null},0)}}}function Pe(){let e=null;function n(){var o,c;e&&((o=e.outResolve)==null||o.call(e,null),(c=e.inResolve)==null||c.call(e,null),e=null)}function t(){if(e!=null&&e.from&&(e!=null&&e.to)&&(e!=null&&e.outResolve)&&(e!=null&&e.inResolve)){if(e.from===e.to){n();return}const o={from:e.from,to:e.to};e.outResolve(o),e.inResolve(o),e=null}}return{trigger(o,c){var m;c==="out"&&(e==null?void 0:e.to)===o&&!e.from&&((m=e.inResolve)==null||m.call(e,null),e={}),e&&(c==="out"&&e.from&&e.from!==o||c==="in"&&e.to&&e.to!==o)&&n(),e||(e={}),c==="out"?e.from=o:e.to=o},get(o){return new Promise(c=>{e||(e={}),o==="out"?e.outResolve=c:e.inResolve=c,t()})}}}const X=new Map;let z=null,re=!1;function ie(e){if(e instanceof HTMLElement&&X.has(e)){const n=X.get(e);X.delete(e),queueMicrotask(n)}for(const n of Array.from(e.childNodes))ie(n)}function Re(){if(re||typeof document>"u")return;re=!0,z=new MutationObserver(n=>{for(const t of n)for(const o of Array.from(t.removedNodes))ie(o)});const e=()=>{z==null||z.observe(document.body,{childList:!0,subtree:!0})};document.body?e():document.addEventListener("DOMContentLoaded",e,{once:!0})}function Ae(e,n){return Re(),X.set(e,n),()=>{X.delete(e)}}function xe(e){return Array.isArray(e)}function le(e){const n=[];for(const t of e)xe(t)?n.push(...le(t)):n.push(t);return n}function Le(e,n={}){const{transitions:t=[],middleware:o=(r,s)=>({from:r,to:s}),preserveScroll:c=r=>r}=e,d=n.host??new se,m=Pe(),w=ye(le(t)),y=Te();y.initialize();const{initializeContext:x,calculateScrollOffset:R,evictScrollPosition:h,shouldPreserve:T,getScrollContainer:A,getPositionedParentElement:O,getScrollPosition:I}=Se({preserveScroll:c});let L=null,k=null;const a=new WeakMap,u=r=>{a.set(r,{parent:r.parentElement,nextSibling:r.nextElementSibling})},f=r=>{const s=a.get(r);return s||{parent:r.parentElement,nextSibling:r.nextElementSibling}},E=(r,s,b,S,B)=>{const K=S.element,D=B.element,{parent:M,nextSibling:C}=S.parent?{parent:S.parent,nextSibling:S.nextSibling}:f(K),_=K.cloneNode(!0),q={scrollOffset:R(s,b),from:{scroll:I(s)},to:{scroll:I(b)},get scrollingElement(){return A()||document.documentElement},get positionedParent(){return O()}};de(_,q),T(s)||h(s);const j=Promise.resolve(_),Z=Promise.resolve(D),J=[],ce={from:j,to:Z,context:q,createElement:((Y,$="div")=>{const N=document.createElement($);return N.setAttribute("data-ssgoi-id",Y),J.push(N),N})},ae=Promise.resolve(r.prepare?r.prepare(ce):{});ge({from:j,to:Z,extras:ae}).then(({from:Y,to:$,extras:N})=>{M&&(C&&M.contains(C)?M.insertBefore(_,C):M.appendChild(_));const G=r.animation({from:Y,to:$,context:q,...N}),U=G.onComplete;G.onComplete=()=>{U==null||U(),_.parentElement&&_.parentElement.removeChild(_);for(const V of J)V.parentElement&&V.parentElement.removeChild(V)},d.attach(G)})},P=(r,s)=>{const b=y.isSwipeBack();m.trigger(r,s),m.get(s).then(S=>{if(s==="in"&&y.onPageEnter(),!S)return;if(b){s==="out"&&S.from&&!T(S.from)&&h(S.from),L=null,k=null;return}if(s!=="in")return;const{from:B,to:K}=o(S.from,S.to),D=pe(B,K,w),M=L,C=k;L=null,k=null,!(!D||!M||!C)&&E(D,B,K,M,C)})},i=(r,s)=>{const b=f(r);L={element:r,parent:b.parent,nextSibling:b.nextSibling},P(s,"out")},l=new WeakSet,g=(r,s)=>{l.has(s)||(l.add(s),u(s),x(s,r),k={element:s,parent:s.parentElement,nextSibling:s.nextElementSibling},P(r,"in"),Ae(s,()=>i(s,r)))},p=new Map;return{register:g,refFor:r=>{let s=p.get(r);return s||(s=b=>{b&&g(r,b)},p.set(r,s)),s}}}exports.Animation=H.Animation;exports.MultiAnimation=H.MultiAnimation;exports.WebAnimation=H.WebAnimation;exports.HostAnimation=se;exports.createSggoiTransitionContext=Le;
|