@infinityfx/lively 3.4.0 → 3.5.0-beta.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/dist/animatable.js +1 -1
- package/dist/core/cache.js +1 -1
- package/dist/core/cache.js.map +1 -1
- package/dist/core/timeline.js +1 -1
- package/dist/core/timeline.js.map +1 -1
- package/dist/core/track.js.map +1 -1
- package/dist/hooks/use-mount-effect.js +2 -0
- package/dist/hooks/use-mount-effect.js.map +1 -0
- package/dist/hooks/use-scroll.js +1 -1
- package/dist/hooks/use-viewport.js +1 -1
- package/dist/layout/layout-group.js +1 -1
- package/dist/types/animatable.d.ts +9 -5
- package/dist/types/core/cache.d.ts +9 -7
- package/dist/types/core/timeline.d.ts +4 -3
- package/dist/types/core/track.d.ts +3 -3
- package/dist/types/hooks/use-mount-effect.d.ts +3 -0
- package/dist/types/layout/morph.d.ts +2 -1
- package/dist/types/layout/typable.d.ts +2 -1
- package/package.json +1 -1
package/dist/animatable.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import{__rest as r}from"tslib";import{jsx as
|
|
2
|
+
import{__rest as r,__assign as e}from"tslib";import{jsx as n}from"react/jsx-runtime";import{createContext as t,forwardRef as i,useRef as a,useContext as o,useState as u,useCallback as c,useImperativeHandle as l,useEffect as d,Children as s,isValidElement as m,cloneElement as f}from"react";import v from"./core/clip.js";import p from"./core/timeline.js";import{merge as h,combineRefs as g}from"./core/utils.js";var y=t(null);var b=i((function(t,i){var b=a(null),x=a([]),w=o(y),L=t.inherit&&w?h({},t,w):t,j=L.id,E=void 0===j?"":j,k=L.group,z=L.order,A=L.paused,C=L.disabled,M=L.animate,D=L.initial,F=L.animations,N=L.stagger,O=L.staggerLimit,P=L.deform,T=L.cachable,V=L.adaptive,q=void 0!==V&&V,B=L.manual,G=void 0!==B&&B,H=L.triggers,I=void 0===H?[]:H,J=L.onAnimationEnd,K=void 0!==z?z:(t.inherit&&(null==w?void 0:w.index)||0)+1,Q=a([]),R=u((function(){var r={animate:v.from(M,D)};for(var e in F)r[e]=v.from(F[e],D);return r}))[0],S=a(new p({stagger:N,staggerLimit:O,deform:P,cachable:T,mountClips:I.reduce((function(r,e){var n=e.name;return"mount"===e.on&&r.push(R[n||"animate"]),r}),[])})),U=c((function(r,e,n){var t;void 0===e&&(e={}),void 0===n&&(n=1);var i=R[r];if(C||K>1&&n<2)return 0;h(e,{reverse:null==i?void 0:i.reverse});for(var a=0,o=e.delay||0,u=i?S.current.time(i):0,c=0,l=x.current;c<l.length;c++){var d=l[c];(null===(t=d.current)||void 0===t?void 0:t.inherit)&&(a=Math.max(d.current.play(r,h({delay:o+u},e),n+1),a))}var s=(e.reverse?a:o)*(K/n);return i&&S.current.add(i,h({delay:s},e)),J&&setTimeout(J.bind({},r),1e3*(u+s)),u+s}),[C,K]);function W(e,n){void 0===n&&(n={});for(var t=0,i=0,a=I;i<a.length;i++){var o=a[i],u=o.name,c=o.on,l=r(o,["name","on"]);c===e&&(t=Math.max(U(u||"animate",h(l,n)),t))}return t}l(g(b,i),(function(){return{play:U,trigger:W,timeline:S.current,children:x.current,inherit:t.inherit,adaptive:q,manual:G,id:E}})),d((function(){A||C?S.current.pause():S.current.play()}),[A,C]),d((function(){for(var e=0;e<I.length;e++){var n=I[e],t=n.name,i=n.on,a=r(n,["name","on"]);if("string"!=typeof i){var o="boolean"==typeof i?i:i.called,u=Q.current[e];void 0!==u&&o&&o!==u&&U(t||"animate",a),Q.current[e]=o}}}),[I]),d((function(){S.current.connect(M);var r=function(){return S.current.cache()};return window.addEventListener("resize",r),null==w||w.push(b),document.fonts.ready.then((function(){G||S.current.mounted||W("mount"),S.current.mounted=!0})),function(){window.removeEventListener("resize",r),null==w||w.splice(b)}}),[]);var X=t.passthrough?w:{group:k,index:K,animate:M,initial:D,animations:F,stagger:N,staggerLimit:O,triggers:I,deform:P,paused:A,disabled:C};return n(y.Provider,{value:e(e({},X),{push:function(r){t.passthrough&&(null==w||w.push(r)),x.current.includes(r)||x.current.push(r)},splice:function(r){t.passthrough&&(null==w||w.splice(r));var e=x.current.indexOf(r)||-1;e>=0&&x.current.splice(e,1)}}),children:s.map(t.children,(function(r){return!m(r)||r.type instanceof Function?r:f(r,{ref:g((function(r){return S.current.insert(r)}),r.ref),pathLength:1,style:h({backfaceVisibility:"hidden",willChange:"transform"},r.props.style,R.animate.initial,{strokeDasharray:1}),"data-lively-offset-boundary":!(!["x","y"].some((function(r){return null==T?void 0:T.includes(r)}))&&void 0!==T)||void 0})}))})}));b.displayName="Animatable";export{y as AnimatableContext,b as default};
|
|
3
3
|
//# sourceMappingURL=animatable.js.map
|
package/dist/core/cache.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{__assign as e}from"tslib";import t from"./clip.js";var o=function(){function o(e,t){void 0===t&&(t=["
|
|
1
|
+
import{__assign as e}from"tslib";import t from"./clip.js";var o=function(){function o(e,t){void 0===t&&(t=["x","y","sx","sy","borderRadius","backgroundColor","color","rotate","opacity"]),this.element=e,this.include=t,this.computed=getComputedStyle(e),this.data=this.read()}return o.prototype.read=function(){for(var e={},t=0,o=this.include;t<o.length;t++){var i=o[t];e[i]=this.computed[i]}if(this.element instanceof SVGElement)return e;e.sx=this.element.offsetWidth,e.sy=this.element.offsetHeight,e.x=e.sx/2,e.y=e.sy/2;for(var r=this.element;r&&(e.x+=r.offsetLeft,e.y+=r.offsetTop,!(null==(r=r.offsetParent)?void 0:r.dataset.livelyOffsetBoundary)););return e},o.prototype.update=function(){this.data=this.read()},o.prototype.difference=function(o,i){void 0===o&&(o=this.data);for(var r=i.duration,s=void 0===r?.5:r,n=i.easing,a=void 0===n?"ease":n,d=i.reverse,f=void 0!==d&&d,c=this.read(),u=[[1,1],[1,1]],p=[["0px","0px"],["0px","0px"]],l={duration:s,easing:a,reverse:f,composite:"combine"},h=e(e({},l),{composite:"override"}),m=0,v=this.include;m<v.length;m++){var x=v[m];switch(x){case"x":case"y":p[0]["x"==x?0:1]=o[x]-c[x]+"px";break;case"sx":case"sy":u[0]["sx"==x?0:1]=0===c[x]?1:o[x]/c[x];break;default:h[x]=[o[x],c[x]]}}return l.scale=u.map((function(e){return e.join(" ")})),l.translate=p.map((function(e){return e.join(" ")})),[new t(l),new t(h)]},o}();export{o as StyleCache};
|
|
2
2
|
//# sourceMappingURL=cache.js.map
|
package/dist/core/cache.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cache.js","sources":["../../src/core/cache.ts"],"sourcesContent":[null],"names":["StyleCache","element","include","this","computed","getComputedStyle","data","read","prototype","
|
|
1
|
+
{"version":3,"file":"cache.js","sources":["../../src/core/cache.ts"],"sourcesContent":[null],"names":["StyleCache","element","include","this","computed","getComputedStyle","data","read","prototype","_i","_a","length","prop","SVGElement","sx","offsetWidth","sy","offsetHeight","x","y","parent","offsetLeft","offsetTop","offsetParent","dataset","livelyOffsetBoundary","update","difference","from","_b","duration","_c","easing","_d","reverse","to","scale","translate","keyframes1","composite","keyframes2","__assign","_e","key","map","val","join","Clip"],"mappings":"0DAeA,IAAAA,EAAA,WAOI,SAAYA,EAAAC,EAAmCC,QAAA,IAAAA,IAAAA,EAA0B,CAAA,IAAK,IAAK,KAAM,KAAM,eAAgB,kBAAmB,QAAS,SAAU,YACjJC,KAAKF,QAAUA,EACfE,KAAKD,QAAUA,EACfC,KAAKC,SAAWC,iBAAiBJ,GACjCE,KAAKG,KAAOH,KAAKI,MACpB,CA0DL,OAxDIP,EAAAQ,UAAAD,KAAA,WAII,IAHA,IAAMD,EAAO,CAAA,EAGMG,EAAA,EAAAC,EAAAP,KAAKD,QAALO,EAAYC,EAAAC,OAAZF,IAAY,CAA1B,IAAMG,EAAIF,EAAAD,GAAkBH,EAAKM,GAAQT,KAAKC,SAASQ,EAAe,CAE3E,GAAIT,KAAKF,mBAAmBY,WAAY,OAAOP,EAC/CA,EAAKQ,GAAKX,KAAKF,QAAQc,YACvBT,EAAKU,GAAKb,KAAKF,QAAQgB,aACvBX,EAAKY,EAAIZ,EAAKQ,GAAK,EACnBR,EAAKa,EAAIb,EAAKU,GAAK,EAGnB,IADA,IAAII,EAA6BjB,KAAKF,QAC/BmB,IACHd,EAAKY,GAAKE,EAAOC,WACjBf,EAAKa,GAAKC,EAAOE,YAGbF,OADJA,EAASA,EAAOG,mBACN,EAANH,EAAQI,QAAQC,yBAGxB,OAAOnB,GAGXN,EAAAQ,UAAAkB,OAAA,WACIvB,KAAKG,KAAOH,KAAKI,QAGrBP,EAAAQ,UAAAmB,WAAA,SAAWC,EAA6BlB,QAA7B,IAAAkB,IAAAA,EAAkBzB,KAAKG,MAQ9B,IARsC,IAAAuB,EAAAnB,EAAAoB,SAAAA,OAAQ,IAAAD,EAAG,GAAGA,EAAEE,WAAAC,OAAS,IAAAD,EAAA,SAAQE,EAAAvB,EAAAwB,QAAAA,OAAO,IAAAD,GAAQA,EAChFE,EAAKhC,KAAKI,OAEV6B,EAAQ,CAAC,CAAC,EAAG,GAAI,CAAC,EAAG,IACvBC,EAAY,CAAC,CAAC,MAAO,OAAQ,CAAC,MAAO,QACnCC,EAA6B,CAAER,SAAQA,EAAEE,OAAMA,EAAEE,QAAOA,EAAEK,UAAW,WACvEC,EAAUC,EAAAA,EAAA,CAAA,EAAwBH,GAAU,CAAEC,UAAW,aAE3C9B,EAAA,EAAAiC,EAAAvC,KAAKD,QAALO,EAAYiC,EAAA/B,OAAZF,IAAc,CAA3B,IAAMkC,EAAGD,EAAAjC,GACV,OAAQkC,GACJ,IAAK,IACL,IAAK,IACDN,EAAU,GAAU,KAAPM,EAAa,EAAI,GAAKf,EAAKe,GAAOR,EAAGQ,GAAO,KACzD,MACJ,IAAK,KACL,IAAK,KACDP,EAAM,GAAU,MAAPO,EAAc,EAAI,GAAiB,IAAZR,EAAGQ,GAAa,EAAIf,EAAKe,GAAOR,EAAGQ,GACnE,MACJ,QAASH,EAAWG,GAAO,CAACf,EAAKe,GAAeR,EAAGQ,IAE1D,CAKD,OAHAL,EAAWF,MAAQA,EAAMQ,KAAI,SAAAC,GAAO,OAAAA,EAAIC,KAAK,IAAI,IACjDR,EAAWD,UAAYA,EAAUO,KAAI,SAAAC,GAAO,OAAAA,EAAIC,KAAK,IAAI,IAElD,CAAC,IAAIC,EAAKT,GAAa,IAAIS,EAAKP,KAG9CxC,CAAD"}
|
package/dist/core/timeline.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import{isLink as t}from"../hooks/use-link.js";import i from"./clip.js";import s from"./track.js";import{IndexedList as e}from"./utils.js";var a=function(){function a(t){var i=t.stagger,s=void 0===i?.1:i,a=t.staggerLimit,r=void 0===a?10:a,o=t.deform,n=void 0===o||o,
|
|
1
|
+
import{isLink as t}from"../hooks/use-link.js";import i from"./clip.js";import s from"./track.js";import{IndexedList as e}from"./utils.js";var a=function(){function a(t){var i=t.stagger,s=void 0===i?.1:i,a=t.staggerLimit,r=void 0===a?10:a,o=t.deform,n=void 0===o||o,h=t.cachable,c=t.mountClips;this.index=0,this.paused=!1,this.tracks=new e,this.frame=0,this.connected=!1,this.mounted=!1,this.stagger=s,this.staggerLimit=r-1,this.deform=n,this.cachable=h,this.mountClips=c}return a.prototype.step=function(){cancelAnimationFrame(this.frame),this.tracks.values.forEach((function(t,i){return t.step(i)})),this.frame=requestAnimationFrame(this.step.bind(this))},a.prototype.time=function(t){return t.duration+t.delay+this.stagger*Math.max(Math.min(this.staggerLimit,this.tracks.size-1),0)},a.prototype.port=function(t,s,e){var a;if(!this.paused)for(var r=0;r<this.tracks.size;r++){var o=this.tracks.values[r],n=s(r);e?new i((a={duration:e,easing:"ease"},a[t]=n,a)).play(o,{composite:"override"}):o.apply(t,n)}},a.prototype.connect=function(s){if(!(this.connected||!s||s instanceof i)){for(var e in s){var a=s[e];t(a)&&(a.onchange(this.port.bind(this,e,a)),this.port(e,a,0))}this.connected=!0,this.step()}},a.prototype.transition=function(t,i){void 0===i&&(i={});for(var s=0;s<this.tracks.size;s++)this.tracks.values[s].transition(null==t?void 0:t.tracks.values[s],i)},a.prototype.insert=function(t){if((t instanceof HTMLElement||t instanceof SVGElement)&&("TRACK_INDEX"in t||(t.TRACK_INDEX=this.index++),!this.tracks.has(t.TRACK_INDEX))){var i=new s(t,this.deform,this.cachable);this.tracks.add(t.TRACK_INDEX,i),this.mounted&&this.mountClips.forEach((function(t){return t.play(i,{})}))}},a.prototype.add=function(t,i){for(var s=i.immediate,e=void 0!==s&&s,a=i.composite,r=i.reverse,o=i.delay,n=void 0===o?0:o,h=i.commit,c=0;c<this.tracks.size;c++)e&&this.tracks.values[c].clear(),t.play(this.tracks.values[c],{delay:n+Math.min(c,this.staggerLimit)*(this.stagger<0?t.duration/this.tracks.size:1)*Math.abs(this.stagger),composite:a,reverse:r,commit:h})},a.prototype.pause=function(){for(var t=0,i=this.tracks.values;t<i.length;t++){i[t].pause()}this.paused=!0},a.prototype.play=function(){for(var t=0,i=this.tracks.values;t<i.length;t++){i[t].play()}this.paused=!1},a.prototype.cache=function(){for(var t=0,i=this.tracks.values;t<i.length;t++){i[t].cache.update()}},a}();export{a as default};
|
|
2
2
|
//# sourceMappingURL=timeline.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"timeline.js","sources":["../../src/core/timeline.ts"],"sourcesContent":[null],"names":["Timeline","_a","_b","stagger","_c","staggerLimit","_d","deform","cachable","mountClips","this","index","paused","tracks","IndexedList","frame","connected","mounted","prototype","step","cancelAnimationFrame","values","forEach","track","i","requestAnimationFrame","bind","time","clip","duration","delay","Math","max","min","size","port","prop","link","dt","value","Clip","easing","play","composite","apply","connect","val","isLink","onchange","transition","from","options","insert","element","HTMLElement","SVGElement","TRACK_INDEX","has","track_1","Track","add","immediate","reverse","commit","clear","abs","pause","_i","length","cache","update"],"mappings":"
|
|
1
|
+
{"version":3,"file":"timeline.js","sources":["../../src/core/timeline.ts"],"sourcesContent":[null],"names":["Timeline","_a","_b","stagger","_c","staggerLimit","_d","deform","cachable","mountClips","this","index","paused","tracks","IndexedList","frame","connected","mounted","prototype","step","cancelAnimationFrame","values","forEach","track","i","requestAnimationFrame","bind","time","clip","duration","delay","Math","max","min","size","port","prop","link","dt","value","Clip","easing","play","composite","apply","connect","val","isLink","onchange","transition","from","options","insert","element","HTMLElement","SVGElement","TRACK_INDEX","has","track_1","Track","add","immediate","reverse","commit","clear","abs","pause","_i","length","cache","update"],"mappings":"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"}
|
package/dist/core/track.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"track.js","sources":["../../src/core/track.ts"],"sourcesContent":[null],"names":["Track","element","deform","cachable","this","playing","active","queue","onupdate","scale","cache","StyleCache","prototype","push","action","onfinish","next","bind","composite","animation","pause","_a","call","update","length","splice","play","clear","partial","forEach","commit","cancel","finish","ex","_i","step","index","correct","transition","previous","options","_this","clips","difference","data","clip","apply","prop","val","set","style","lengthToOffset","decomposeScale","computed","split","xString","yString","x","Math","max","parseFloat","test","y","computeBorderRadius","borderRadius","arr","prev","map","axis","i","match","join","children","transform","concat"],"mappings":"oFAOA,IAAAA,EAAA,WAWI,SAAAA,EAAYC,EAAmCC,EAAiBC,GAPhEC,KAAOC,QAAW,EAClBD,KAAME,OAAa,GACnBF,KAAKG,MAAa,GAClBH,KAAQI,SAAwB,KAEhCJ,KAAAK,MAA0B,CAAC,EAAG,GAG1BL,KAAKH,QAAUA,EACfG,KAAKF,OAASA,EACdE,KAAKM,MAAQ,IAAIC,EAAWV,EAASE,EACxC,
|
|
1
|
+
{"version":3,"file":"track.js","sources":["../../src/core/track.ts"],"sourcesContent":[null],"names":["Track","element","deform","cachable","this","playing","active","queue","onupdate","scale","cache","StyleCache","prototype","push","action","onfinish","next","bind","composite","animation","pause","_a","call","update","length","splice","play","clear","partial","forEach","commit","cancel","finish","ex","_i","step","index","correct","transition","previous","options","_this","clips","difference","data","clip","apply","prop","val","set","style","lengthToOffset","decomposeScale","computed","split","xString","yString","x","Math","max","parseFloat","test","y","computeBorderRadius","borderRadius","arr","prev","map","axis","i","match","join","children","transform","concat"],"mappings":"oFAOA,IAAAA,EAAA,WAWI,SAAAA,EAAYC,EAAmCC,EAAiBC,GAPhEC,KAAOC,QAAW,EAClBD,KAAME,OAAa,GACnBF,KAAKG,MAAa,GAClBH,KAAQI,SAAwB,KAEhCJ,KAAAK,MAA0B,CAAC,EAAG,GAG1BL,KAAKH,QAAUA,EACfG,KAAKF,OAASA,EACdE,KAAKM,MAAQ,IAAIC,EAAWV,EAASE,EACxC,CA+HL,OA7HIH,EAAIY,UAAAC,KAAJ,SAAKC,GAWD,OAVAA,EAAOC,SAAWX,KAAKY,KAAKC,KAAKb,MAE7BA,KAAKC,SAAgC,SAArBS,EAAOI,WACvBd,KAAKG,MAAMM,KAAKC,GAChBA,EAAOK,UAAUC,UAEjBhB,KAAKE,OAAOO,KAAKC,GACQ,SAArBA,EAAOI,WAAsBd,KAAKC,WAGnCS,GAGXd,EAAAY,UAAAI,KAAA,iBACiB,QAAbK,EAAAjB,KAAKI,gBAAQ,IAAAa,GAAAA,EAAAC,KAAAlB,MACbA,KAAKM,MAAMa,WAELnB,KAAKC,QAAU,IAErBD,KAAKE,OAASF,KAAKG,MAAMiB,OAASpB,KAAKG,MAAMkB,OAAO,EAAG,GAAK,GAC5DrB,KAAKC,QAAUD,KAAKE,OAAOkB,OAC3BpB,KAAKsB,SAGT1B,EAAKY,UAAAe,MAAL,SAAMC,GACFxB,KAAKE,OAAOuB,SAAQ,SAAAf,GAChBA,EAAOC,SAAW,KAElB,IACSa,EAGId,EAAOgB,QAA+B,YAArBhB,EAAOI,WACzBJ,EAAOK,UAAUY,SAHrBjB,EAAOK,UAAUa,QAKxB,CAAC,MAAOC,GACLnB,EAAOK,UAAUY,QACpB,CACL,IAEKH,IACDxB,KAAKE,OAAS,GACdF,KAAKG,MAAQ,GACbH,KAAKC,QAAU,IAKvBL,EAAAY,UAAAQ,MAAA,WACI,IAAqB,IAAAc,EAAA,EAAAb,EAAAjB,KAAKE,OAAL4B,EAAWb,EAAAG,OAAXU,IAAW,CAAfb,EAAAa,GAAwBf,UAAUC,OAAQ,GAG/DpB,EAAAY,UAAAc,KAAA,WACI,IAAqB,IAAAQ,EAAA,EAAAb,EAAAjB,KAAKE,OAAL4B,EAAWb,EAAAG,OAAXU,IAAW,CAAfb,EAAAa,GAAwBf,UAAUO,MAAO,GAG9D1B,EAAIY,UAAAuB,KAAJ,SAAKC,GACD,IAAqB,IAAAF,EAAA,EAAAb,EAAAjB,KAAKE,OAAL4B,EAAWb,EAAAG,OAAXU,IAAW,CAAfb,EAAAa,GAAwBC,KAAKC,EAAO,CAEjDhC,KAAKE,OAAOkB,QAAQpB,KAAKiC,WAGjCrC,EAAAY,UAAA0B,WAAA,SAAWC,EAA6BC,GAAxC,IASCC,EAAArC,KARGA,KAAKuB,OAAM,GAEX,IAAMe,EAAQtC,KAAKM,MAAMiC,WAAWJ,aAAA,EAAAA,EAAU7B,MAAMkC,KAAMJ,GAC1DpC,KAAKM,MAAMa,SACXgB,SAAAA,EAAUZ,QACVY,SAAAA,EAAU7B,MAAMa,SAEhBmB,EAAMb,SAAQ,SAAAgB,GAAQ,OAAAA,EAAKnB,KAAKe,EAAM,CAAEX,QAAQ,GAAQ,KAG5D9B,EAAAY,UAAAkC,MAAA,SAAMC,EAAcC,GAChB5C,KAAK6C,IAAIF,EAAMC,GACf5C,KAAKiC,WAGTrC,EAAAY,UAAAqC,IAAA,SAAIF,EAAcC,GACdD,EAAgB,iBAATA,EAA0B,mBAAqBA,EAEtD3C,KAAKH,QAAQiD,MAAMH,GAA0B,qBAATA,EAA8BI,EAAeH,GAAOA,GAG5FhD,EAAAY,UAAAwC,eAAA,WACU,IAAA/B,EAAqBjB,KAAKM,MAAM2C,SAAS5C,MAAM6C,MAAM,KAApDC,OAASC,OAEZC,EAAIC,KAAKC,IAAIC,WAAWL,IAAY,EAAG,MACvC,KAAKM,KAAKN,KAAUE,GAAK,KAE7B,IAAIK,EAAIN,EAAUE,KAAKC,IAAIC,WAAWJ,GAAU,MAAUC,EAG1D,MAFI,KAAKI,KAAKL,KAAUM,GAAK,KAEtB,CAACL,EAAGK,IAGf9D,EAAmBY,UAAAmD,oBAAnB,SAAoBC,GAApB,IAYCvB,EAAArC,UAZmB,IAAA4D,IAAAA,EAAe5D,KAAKM,MAAM2C,SAASW,cACnD,IAAMC,EAAMD,EAAaV,MAAM,YAC3BW,EAAIzC,OAAS,IAAGyC,EAAI,GAAKA,EAAI,IAEjC,IAAMC,EAAO9D,KAAKK,MAGlB,OAFAL,KAAKK,MAAQL,KAAKgD,iBAEXa,EAAIE,KAAI,SAACC,EAAMC,GAClB,OAAOD,EAAKd,MAAM,KAAKa,KAAI,SAAAnB,SACvB,OAAOY,WAAWZ,GAAOkB,EAAKG,GAAK5B,EAAKhC,MAAM4D,KAA4B,QAAtBhD,EAAA2B,EAAIsB,MAAM,oBAAY,IAAAjD,OAAA,EAAAA,EAAG,KAAM,KACvF,IAAGkD,KAAK,IACZ,IAAGA,KAAK,MAGZvE,EAAAY,UAAAyB,QAAA,WACI,IAAIjC,KAAKF,OAAT,CAEAE,KAAKH,QAAQiD,MAAMc,aAAe5D,KAAK2D,sBAGvC,IAFM,IAAA1C,EAASjB,KAAKgD,iBAAbK,EAACpC,EAAA,GAAEyC,EAACzC,EAAA,GAEFgD,EAAI,EAAGA,EAAIjE,KAAKH,QAAQuE,SAAShD,OAAQ6C,IAAK,CACrCjE,KAAKH,QAAQuE,SAASH,GAE9BnB,MAAMuB,UAAY,SAASC,OAAA,EAAIjB,EAAM,MAAAiB,OAAA,EAAIZ,MAElD,CAVuB,GAa/B9D,CAAD"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-mount-effect.js","sources":["../../src/hooks/use-mount-effect.ts"],"sourcesContent":[null],"names":["useMountEffect","window","useEffect","useLayoutEffect"],"mappings":"uDAEA,IAAMA,EAAmC,oBAAXC,OAAyBC,EAAYC"}
|
package/dist/hooks/use-scroll.js
CHANGED
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import
|
|
2
|
+
import t from"./use-link.js";import e from"./use-mount-effect.js";function r(r){var n=void 0===r?{}:r,o=n.restore,l=void 0===o?0:o,i=n.target,u=t({x:0,y:0,top:0,left:0});return e((function(){var t=(null==i?void 0:i.current)?i.current:window;function e(t){var e=(null==i?void 0:i.current)||document.documentElement,r=e.scrollLeft,n=r/(e.scrollWidth-e.clientWidth||1),o=e.scrollTop,l=o/(e.scrollHeight-e.clientHeight||1);u.set({x:n,y:l,top:o,left:r},t)}e(l);var r=function(){return e()};return t.addEventListener("scroll",r),function(){return t.removeEventListener("scroll",r)}}),[i]),u}export{r as default};
|
|
3
3
|
//# sourceMappingURL=use-scroll.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import{useRef as e
|
|
2
|
+
import{useRef as e}from"react";import n from"./use-link.js";import t from"./use-mount-effect.js";function i(i){void 0===i&&(i=.5);var r=e(null),o=n([-1,-1]);return t((function(){function e(){if(r.current){var e=r.current.getBoundingClientRect(),n=e.x,t=e.y,d=e.width,s=e.height;o.set([(n+d*i)/(window.innerWidth+2*d*(i-.5)),(t+s*i)/(window.innerHeight+2*s*(i-.5))])}}return e(),window.addEventListener("scroll",e),window.addEventListener("resize",e),function(){window.removeEventListener("scroll",e),window.removeEventListener("resize",e)}}),[i]),[o,r]}export{i as default};
|
|
3
3
|
//# sourceMappingURL=use-viewport.js.map
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
"use client";
|
|
2
|
-
import{jsx as r}from"react/jsx-runtime";import{useRef as n,useState as t,useEffect as e,Children as i,isValidElement as u}from"react";import o from"../animatable.js";function a(r,n){return void 0===n&&(n={}),i.forEach(r,(function(r){var t;if(u(r)){var e=null===(t=r.type)||void 0===t?void 0:t.displayName;"Animatable"!==e&&"Animate"!==e||!("id"in r.props)||(n[r.props.id]=!0),a(r.props.children,n)}})),n}function c(r,n){var t=typeof r,e=typeof n;if(t!==e)return!1;if(u(r))return!(!u(n)||r.key!==n.key)&&c(r.props,n.props);if(Array.isArray(r)){if(!Array.isArray(n)||r.length!==n.length)return!1;for(var i=0;i<r.length;i++)if(!c(r[i],n[i]))return!1;return!0}if("object"===t&&null!==r&&null!==n){var o=Object.keys(r),a=Object.keys(n);if(o.length!==a.length)return!1;if(!o.length)return r.toString()===n.toString();for(i=0;i<o.length;i++)if(!(o[i]in n)||!c(r[o[i]],n[a[i]]))return!1;return!0}return"function"===t&&t===e||r===n}function f(r,n){try{return c(r,n)}catch(r){return!1}}function l(i){var u=i.children,c=i.transition,l=n(null),
|
|
2
|
+
import{jsx as r}from"react/jsx-runtime";import{useRef as n,useState as t,useEffect as e,Children as i,isValidElement as u}from"react";import o from"../animatable.js";function a(r,n){return void 0===n&&(n={}),i.forEach(r,(function(r){var t;if(u(r)){var e=null===(t=r.type)||void 0===t?void 0:t.displayName;"Animatable"!==e&&"Animate"!==e||!("id"in r.props)||(n[r.props.id]=!0),a(r.props.children,n)}})),n}function c(r,n){var t=typeof r,e=typeof n;if(t!==e)return!1;if(u(r))return!(!u(n)||r.key!==n.key)&&c(r.props,n.props);if(Array.isArray(r)){if(!Array.isArray(n)||r.length!==n.length)return!1;for(var i=0;i<r.length;i++)if(!c(r[i],n[i]))return!1;return!0}if("object"===t&&null!==r&&null!==n){var o=Object.keys(r),a=Object.keys(n);if(o.length!==a.length)return!1;if(!o.length)return r.toString()===n.toString();for(i=0;i<o.length;i++)if(!(o[i]in n)||!c(r[o[i]],n[a[i]]))return!1;return!0}return"function"===t&&t===e||r===n}function f(r,n){try{return c(r,n)}catch(r){return!1}}function l(i){var u=i.children,c=i.transition,l=n(null),h=n(a(u)),p=t(u),d=p[0],m=p[1];return e((function(){if(l.current&&!f(d,u)){for(var r=0,n=a(u),t=0,e=l.current.children;t<e.length;t++){var i=e[t];i.current&&!i.current.manual&&i.current.id in h.current&&!(i.current.id in n)&&(r=Math.max(i.current.trigger("unmount"),r))}h.current=n,setTimeout((function(){return m(u)}),1e3*r)}}),[u]),e((function(){var r;if(l.current)for(var n=0,t=l.current.children;n<t.length;n++){var e=t[n];(null===(r=e.current)||void 0===r?void 0:r.timeline.mounted)&&e.current.adaptive&&e.current.timeline.transition(void 0,c)}}),[d]),r(o,{ref:l,cachable:[],passthrough:!0,children:d})}export{l as default};
|
|
3
3
|
//# sourceMappingURL=layout-group.js.map
|
|
@@ -1,7 +1,8 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
|
-
import Clip, { AnimatableInitials,
|
|
2
|
+
import Clip, { AnimatableInitials, ClipProperties } from "./core/clip";
|
|
3
3
|
import { Trigger } from "./hooks/use-trigger";
|
|
4
4
|
import Timeline, { PlayOptions } from "./core/timeline";
|
|
5
|
+
import { CachableKey } from "./core/cache";
|
|
5
6
|
type StaticTrigger = 'mount' | 'unmount';
|
|
6
7
|
export type AnimatableType<T extends string = any> = {
|
|
7
8
|
play: (animation: T | 'animate', options?: PlayOptions, layer?: number) => number;
|
|
@@ -35,14 +36,16 @@ export type AnimatableProps<T extends string = any> = {
|
|
|
35
36
|
id?: string;
|
|
36
37
|
order?: number;
|
|
37
38
|
inherit?: boolean;
|
|
39
|
+
passthrough?: boolean;
|
|
38
40
|
adaptive?: boolean;
|
|
39
|
-
cachable?:
|
|
41
|
+
cachable?: CachableKey[];
|
|
40
42
|
manual?: boolean;
|
|
41
43
|
onAnimationEnd?: (animation: T | 'animate') => void;
|
|
42
44
|
} & SharedProps<T>;
|
|
43
45
|
export declare const AnimatableContext: import("react").Context<({
|
|
44
|
-
index
|
|
45
|
-
|
|
46
|
+
index?: number | undefined;
|
|
47
|
+
push: (child: React.RefObject<AnimatableType>) => void;
|
|
48
|
+
splice: (child: React.RefObject<AnimatableType>) => void;
|
|
46
49
|
} & SharedProps<any>) | null>;
|
|
47
50
|
declare function AnimatableBase<T extends string>(props: AnimatableProps<T>, ref: React.ForwardedRef<AnimatableType>): import("react/jsx-runtime").JSX.Element;
|
|
48
51
|
declare const Animatable: (<T extends string>(props: {
|
|
@@ -50,8 +53,9 @@ declare const Animatable: (<T extends string>(props: {
|
|
|
50
53
|
id?: string | undefined;
|
|
51
54
|
order?: number | undefined;
|
|
52
55
|
inherit?: boolean | undefined;
|
|
56
|
+
passthrough?: boolean | undefined;
|
|
53
57
|
adaptive?: boolean | undefined;
|
|
54
|
-
cachable?:
|
|
58
|
+
cachable?: CachableKey[] | undefined;
|
|
55
59
|
manual?: boolean | undefined;
|
|
56
60
|
onAnimationEnd?: ((animation: "animate" | T) => void) | undefined;
|
|
57
61
|
} & SharedProps<T> & {
|
|
@@ -1,19 +1,21 @@
|
|
|
1
1
|
import Clip, { AnimatableKey } from "./clip";
|
|
2
2
|
import { TransitionOptions } from "./track";
|
|
3
|
+
type PartialCachableKey = Exclude<AnimatableKey, 'scale' | 'translate'>;
|
|
4
|
+
export type CachableKey = PartialCachableKey | 'x' | 'y' | 'sx' | 'sy';
|
|
3
5
|
type CacheData = {
|
|
4
|
-
[key in
|
|
6
|
+
[key in PartialCachableKey]?: string;
|
|
5
7
|
} & {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
x: number;
|
|
9
|
+
y: number;
|
|
10
|
+
sx: number;
|
|
11
|
+
sy: number;
|
|
10
12
|
};
|
|
11
13
|
export declare class StyleCache {
|
|
12
14
|
element: HTMLElement | SVGElement;
|
|
13
15
|
data: CacheData;
|
|
14
16
|
computed: CSSStyleDeclaration;
|
|
15
|
-
include:
|
|
16
|
-
constructor(element: HTMLElement | SVGElement, include?:
|
|
17
|
+
include: CachableKey[];
|
|
18
|
+
constructor(element: HTMLElement | SVGElement, include?: CachableKey[]);
|
|
17
19
|
read(): CacheData;
|
|
18
20
|
update(): void;
|
|
19
21
|
difference(from: CacheData | undefined, { duration, easing, reverse }: TransitionOptions): Clip[];
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { type Link } from "../hooks/use-link";
|
|
2
|
-
import
|
|
2
|
+
import { CachableKey } from "./cache";
|
|
3
|
+
import Clip, { ClipProperties, CompositeType } from "./clip";
|
|
3
4
|
import Track, { TransitionOptions } from "./track";
|
|
4
5
|
import { IndexedList } from "./utils";
|
|
5
6
|
export type PlayOptions = {
|
|
@@ -14,7 +15,7 @@ export default class Timeline {
|
|
|
14
15
|
stagger: number;
|
|
15
16
|
staggerLimit: number;
|
|
16
17
|
deform: boolean;
|
|
17
|
-
cachable?:
|
|
18
|
+
cachable?: CachableKey[];
|
|
18
19
|
paused: boolean;
|
|
19
20
|
tracks: IndexedList<Track>;
|
|
20
21
|
frame: number;
|
|
@@ -25,7 +26,7 @@ export default class Timeline {
|
|
|
25
26
|
stagger?: number;
|
|
26
27
|
staggerLimit?: number;
|
|
27
28
|
deform?: boolean;
|
|
28
|
-
cachable?:
|
|
29
|
+
cachable?: CachableKey[];
|
|
29
30
|
mountClips: Clip[];
|
|
30
31
|
});
|
|
31
32
|
step(): void;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type Action from "./action";
|
|
2
|
-
import { StyleCache } from "./cache";
|
|
3
|
-
import type {
|
|
2
|
+
import { CachableKey, StyleCache } from "./cache";
|
|
3
|
+
import type { Easing } from "./clip";
|
|
4
4
|
export type TransitionOptions = {
|
|
5
5
|
duration?: number;
|
|
6
6
|
easing?: Easing;
|
|
@@ -15,7 +15,7 @@ export default class Track {
|
|
|
15
15
|
onupdate: (() => void) | null;
|
|
16
16
|
cache: StyleCache;
|
|
17
17
|
scale: [number, number];
|
|
18
|
-
constructor(element: HTMLElement | SVGElement, deform: boolean, cachable?:
|
|
18
|
+
constructor(element: HTMLElement | SVGElement, deform: boolean, cachable?: CachableKey[]);
|
|
19
19
|
push(action: Action): Action;
|
|
20
20
|
next(): void;
|
|
21
21
|
clear(partial?: boolean): void;
|
|
@@ -10,8 +10,9 @@ declare const Morph: import("react").ForwardRefExoticComponent<{
|
|
|
10
10
|
id?: string | undefined;
|
|
11
11
|
order?: number | undefined;
|
|
12
12
|
inherit?: boolean | undefined;
|
|
13
|
+
passthrough?: boolean | undefined;
|
|
13
14
|
adaptive?: boolean | undefined;
|
|
14
|
-
cachable?: import("../core/
|
|
15
|
+
cachable?: import("../core/cache").CachableKey[] | undefined;
|
|
15
16
|
manual?: boolean | undefined;
|
|
16
17
|
onAnimationEnd?: ((animation: any) => void) | undefined;
|
|
17
18
|
} & {
|
|
@@ -5,8 +5,9 @@ declare const Typable: import("react").ForwardRefExoticComponent<{
|
|
|
5
5
|
id?: string | undefined;
|
|
6
6
|
order?: number | undefined;
|
|
7
7
|
inherit?: boolean | undefined;
|
|
8
|
+
passthrough?: boolean | undefined;
|
|
8
9
|
adaptive?: boolean | undefined;
|
|
9
|
-
cachable?: import("../core/
|
|
10
|
+
cachable?: import("../core/cache").CachableKey[] | undefined;
|
|
10
11
|
manual?: boolean | undefined;
|
|
11
12
|
onAnimationEnd?: ((animation: any) => void) | undefined;
|
|
12
13
|
} & {
|