@infinityfx/lively 5.0.0-alpha.3 → 5.0.0-alpha.4

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/animate.js CHANGED
@@ -1,3 +1,3 @@
1
1
  "use client";
2
- import{jsx as t}from"react/jsx-runtime";import{createContext as n,useId as e,use as r,useRef as i,useImperativeHandle as o,useLayoutEffect as s,useEffect as a,Children as c,isValidElement as m,cloneElement as d}from"react";import l from"./core/animator.js";import f from"./core/clip.js";import{serializeTriggers as u,getLifeCycleAnimations as p,forEachTrigger as g,mergeStyles as y,getInitialStyleFromLinks as h,mergeRefs as k}from"./core/utils.js";import{LayoutGroupContext as j}from"./layout-group.js";import{registerToLayoutGroup as v,getMorphTarget as w,deleteMorphTarget as L,unregisterFromLayoutGroup as E}from"./core/state.js";const C=n("");function x({ref:n,children:x,inherit:z=!1,initial:A={},animate:I={},triggers:S={animate:["mount"]},stagger:T=.07,staggerLimit:_=10,deformCorrection:b,transition:D,morph:P,clips:q,paused:B=!1,onAnimationEnd:F}){const G=S._livelyId??"_la"+e(),H=r(C),J=r(j),K=i(u(S)),M=i(null);if(!M.current){const t={animate:I instanceof f?I:new f(I,A)};for(const n in q)t[n]=q[n]instanceof f?q[n]:new f(q[n],A);const n=M.current=new l({id:G,clips:t,lifeCycleAnimations:p(S),deformCorrection:b,transition:D,stagger:T,staggerLimit:_});n.register(H,z),n.addLinks(I)}const{current:N}=M,O=v(J,G);return o(n,(()=>N),[]),s((()=>{if(N.register(H,z,P),N.addLinks(I),P){const t=w(P,G);t&&(N.transition(t),L(P,t.id),N.state="mounted")}v(J,G)&&(N.state="mounted"),document.fonts.ready.finally((()=>N.mount()));const t=()=>N.forEachTrack((t=>t.snapshot()));return window.addEventListener("resize",t),()=>{N.dispose(P),E(J,G),window.removeEventListener("resize",t)}}),[]),a((()=>{g(S,((t,n,e)=>{const r=K.current[t];n.forEach(((n,i)=>{r[i]!==n&&!1!==n&&N.play(t,e[i]),r[i]=n}))}))}),[S]),a((()=>{if(!(I instanceof f||"mounted"!==N.state))for(const t in I){const n=I[t];t in N.links&&"object"!=typeof n&&N.links[t].set(n,{duration:I.duration,easing:I.easing})}}),[I]),a((()=>(F&&N.on("animationend",F),()=>{F&&N.off("animationend",F)})),[F]),a((()=>N.setPlayState(B)),[B]),t(C,{value:G,children:c.map(x,((t,n)=>{if(!m(t))return t;let{ref:e,style:r}=t.props;return r=y(r,N.mergeInitialStyles(A,O?"mounted":"unmounted"),h(N.links,n)),d(t,{ref:k(e||null,(t=>N.addTrack(t,n))),style:r,pathLength:"strokeDasharray"in r?1:void 0,"data-lively":G})}))})}export{C as AnimateContext,x as default};
2
+ import{jsx as t}from"react/jsx-runtime";import{createContext as n,useId as e,use as r,useRef as i,useImperativeHandle as o,useLayoutEffect as s,useEffect as a,Children as c,isValidElement as m,cloneElement as d}from"react";import l from"./core/animator.js";import f from"./core/clip.js";import{serializeTriggers as u,getLifeCycleAnimations as p,forEachTrigger as g,mergeStyles as y,getInitialStyleFromLinks as h,mergeRefs as j}from"./core/utils.js";import{LayoutGroupContext as k}from"./layout-group.js";import{registerToLayoutGroup as v,getMorphTarget as w,deleteMorphTarget as L,unregisterFromLayoutGroup as E}from"./core/state.js";const C=n("");function b({ref:n,children:b,inherit:x=!1,initial:z={},animate:A={},triggers:I={animate:["mount"]},stagger:S=.07,staggerLimit:T=10,deformCorrection:_,transition:D,morph:O,clips:P,paused:q=!1,onAnimationEnd:B}){const F=I._livelyId??"_la"+e(),G=r(C),H=r(k),J=i(u(I)),K=i(null);if(!K.current){const t={animate:A instanceof f?A:new f(A,z)};for(const n in P)t[n]=P[n]instanceof f?P[n]:new f(P[n],z);const n=K.current=new l({id:F,clips:t,lifeCycleAnimations:p(I),deformCorrection:_,transition:D,stagger:S,staggerLimit:T});n.register(G,x),n.addLinks(A)}const{current:M}=K,N=v(H,F);return o(n,(()=>M),[]),s((()=>{if(M.register(G,x,O),M.addLinks(A),O){const t=w(O,F);t&&(M.transition(t),L(O,t.id),M.state="mounted")}v(H,F)&&(M.state="mounted"),document.fonts.ready.finally((()=>M.mount()));const t=()=>M.forEachTrack((t=>t.snapshot()));return window.addEventListener("resize",t),()=>{M.dispose(O),E(H,F),window.removeEventListener("resize",t)}}),[]),a((()=>{g(I,((t,n,e)=>{const r=J.current[t];n.forEach(((n,i)=>{r[i]!==n&&!1!==n&&M.play(t,Object.assign({tag:t},e[i])),r[i]=n}))}))}),[I]),a((()=>{if(!(A instanceof f||"mounted"!==M.state))for(const t in A){const n=A[t];t in M.links&&"object"!=typeof n&&M.links[t].set(n,{duration:A.duration,easing:A.easing})}}),[A]),a((()=>(B&&M.on("animationend",B),()=>{B&&M.off("animationend",B)})),[B]),a((()=>M.setPlayState(q)),[q]),t(C,{value:F,children:c.map(b,((t,n)=>{if(!m(t))return t;let{ref:e,style:r}=t.props;return r=y(r,M.mergeInitialStyles(z,N?"mounted":"unmounted"),h(M.links,n)),d(t,{ref:j(e||null,(t=>M.addTrack(t,n))),style:r,pathLength:"strokeDasharray"in r?1:void 0,"data-lively":F})}))})}export{C as AnimateContext,b as default};
3
3
  //# sourceMappingURL=animate.js.map
@@ -1,2 +1,2 @@
1
- import t from"./clip.js";import{registerAnimator as i,registerAsMorph as s,getParentAnimator as e,unregisterAnimator as a,deleteMorphTarget as n}from"./state.js";import r from"./track.js";import{extractAnimationLinks as h}from"./utils.js";class o{constructor({id:t,clips:i,lifeCycleAnimations:s,deformCorrection:e,transition:a,stagger:n,staggerLimit:r}){this.parent=null,this.dependents=new Set,this.inherit=[],this.links={},this.onDisposeLinks=null,this.tracks=new Set,this.trackList=[],this.initialStyles={},this.eventListeners={},this.state="unmounted",this.paused=!1,this.timeout=0,this.frame=0;const{cache:h,...o}=a||{};this.id=t,this.clips=i,this.lifeCycleAnimations=s,this.ignoreScaleDeformation=void 0!==e&&!e,this.defaultTransitionOptions=o,this.cache=h||["x","y","sx","sy","rotate","borderRadius"],this.align="object"==typeof e?e:{x:"left",y:"top"},this.stagger=n,this.staggerLimit=r,void 0===e&&this.inherit.push("ignoreScaleDeformation"),void 0===e&&this.inherit.push("align"),a||this.inherit.push("defaultTransitionOptions"),h||this.inherit.push("cache")}register(t,a,n){if(clearTimeout(this.timeout),i(this.id,this),n&&s(n,this.id),t&&!1!==a&&(this.parent=e(t,"boolean"==typeof a?0:a)),this.parent){this.parent.dependents.add(this);for(const t of this.inherit)this[t]=this.parent[t]}}mount(){"unmounted"===this.state&&this.trigger("mount"),this.state="mounted",cancelAnimationFrame(this.frame),this.tick()}dispose(t){this.stop(),this.onDisposeLinks?.(),cancelAnimationFrame(this.frame),this.trackList.forEach((t=>t.cache=t.snapshot())),this.state="unmounted",this.timeout=setTimeout((()=>{a(this.id),t&&n(t,this.id),this.parent&&this.parent.dependents.delete(this)}),1)}on(t,i){t in this.eventListeners||(this.eventListeners[t]=new Set),this.eventListeners[t].add(i)}off(t,i){this.eventListeners[t]?.delete(i)}dispatch(t,...i){this.eventListeners[t]?.forEach((t=>t(...i)))}tick(){this.paused||this.trackList.forEach((t=>{this.ignoreScaleDeformation||t.correct()})),this.frame=requestAnimationFrame(this.tick.bind(this))}addLinks(i){const[s,e]=h(i,((i,s)=>{this.forEachTrack(((e,a)=>{const n=new t({...s.options,composite:"override",[i]:s.get(a)});e.push(n)}))}));this.links=s,this.onDisposeLinks=e}addTrack(t,i){if(!(t instanceof HTMLElement||t instanceof SVGElement)||this.tracks.has(t))return;const s=new r(t,this.cache,this.align),e=this.lifeCycleAnimations.mount;this.tracks.add(t),this.trackList.splice(i,0,s),"mounted"===this.state&&e&&e.forEach((([t,i])=>s.push(this.clips[t],i)))}mergeInitialStyles(i,s){if(s in this.initialStyles)return this.initialStyles[s];const e=(this.lifeCycleAnimations.mount||[]).map((([t])=>this.clips[t])).filter((t=>!t.isEmpty));return e.length?i=t.mergeInitialStyles(e,i,"mounted"===s):this.parent&&(i=this.parent.mergeInitialStyles(i,s)),this.initialStyles[s]=i}pretime(t,i){if(t.isEmpty)return 0;const{duration:s,delay:e,iterations:a}=t.getConfig(i);return(s*a+e)/1e3+Math.max(Math.min(this.tracks.size,this.staggerLimit)-1,0)*this.stagger}trigger(t,i={}){let s=this.lifeCycleAnimations[t],e=0;return s&&s.forEach((t=>e=Math.max(this.play(...t),e))),e}play(t,{cascade:i="forward",delay:s=0,tag:e,...a}={}){if(this.paused||this.parent&&!e)return 0;let n="string"==typeof t?this.clips[t]:t;e&&e in this.clips&&(n=this.clips[e]),e||"string"!=typeof t||(e=t);const r=this.pretime(n,a),h=this.cascade(n,{...a,delay:"reverse"===i?s:r+s,tag:e});return this.push(n,{...a,delay:"reverse"===i?h+s:s,tag:e})}cascade(t,i){let s=0;return this.dependents.forEach((e=>{s=Math.max(s,e.play(t,i))})),s}forEachTrack(t){let i=0;for(;i<this.tracks.size;){const s=this.trackList[i];s.element.isConnected?t(s,i++):(this.tracks.delete(s.element),this.trackList.splice(i,1))}}push(t,{override:i,delay:s=0,tag:e,...a}){if(t.isEmpty)return 0;let n=0;return this.forEachTrack(((r,h)=>{i&&r.clear();const o=r.push(t,{...a,delay:s+Math.min(h,this.staggerLimit-1)*this.stagger},h===this.tracks.size-1?()=>this.dispatch("animationend",e):void 0);n=Math.max(n,o)})),n}transition(t,i=this.defaultTransitionOptions){this.paused||(this.trackList.forEach(((s,e)=>{const{cache:a}=t&&e<t.tracks.size?t.trackList[e]:{};s.transition(a,i)})),this.dispatch("transitionstart"))}setPlayState(t){this.trackList.forEach((i=>i.toggle(t))),this.paused=t,this.dependents.forEach((i=>i.setPlayState(t)))}stop(t){this.trackList.forEach((i=>i.clear(t)))}}export{o as default};
1
+ import t from"./clip.js";import{registerAnimator as i,registerAsMorph as s,getParentAnimator as e,unregisterAnimator as a,deleteMorphTarget as n}from"./state.js";import r from"./track.js";import{extractAnimationLinks as h}from"./utils.js";class o{constructor({id:t,clips:i,lifeCycleAnimations:s,deformCorrection:e,transition:a,stagger:n,staggerLimit:r}){this.parent=null,this.dependents=new Set,this.inherit=[],this.links={},this.onDisposeLinks=null,this.tracks=new Set,this.trackList=[],this.initialStyles={},this.eventListeners={},this.state="unmounted",this.paused=!1,this.timeout=0,this.frame=0;const{cache:h,...o}=a||{};this.id=t,this.clips=i,this.lifeCycleAnimations=s,this.ignoreScaleDeformation=void 0!==e&&!e,this.defaultTransitionOptions=o,this.cache=h||["x","y","sx","sy","rotate","borderRadius"],this.align="object"==typeof e?e:{x:"left",y:"top"},this.stagger=n,this.staggerLimit=r,void 0===e&&this.inherit.push("ignoreScaleDeformation"),void 0===e&&this.inherit.push("align"),a||this.inherit.push("defaultTransitionOptions"),h||this.inherit.push("cache")}register(t,a,n){if(clearTimeout(this.timeout),i(this.id,this),n&&s(n,this.id),t&&!1!==a&&(this.parent=e(t,"boolean"==typeof a?0:a)),this.parent){this.parent.dependents.add(this);for(const t of this.inherit)this[t]=this.parent[t]}}mount(){"unmounted"===this.state&&this.trigger("mount"),this.state="mounted",cancelAnimationFrame(this.frame),this.tick()}dispose(t){this.stop(),this.onDisposeLinks?.(),cancelAnimationFrame(this.frame),this.trackList.forEach((t=>t.cache=t.snapshot())),this.state="unmounted",this.timeout=setTimeout((()=>{a(this.id),t&&n(t,this.id),this.parent&&this.parent.dependents.delete(this)}),1)}on(t,i){t in this.eventListeners||(this.eventListeners[t]=new Set),this.eventListeners[t].add(i)}off(t,i){this.eventListeners[t]?.delete(i)}dispatch(t,...i){this.eventListeners[t]?.forEach((t=>t(...i)))}tick(){this.paused||this.trackList.forEach((t=>{this.ignoreScaleDeformation||t.correct()})),this.frame=requestAnimationFrame(this.tick.bind(this))}addLinks(i){const[s,e]=h(i,((i,s)=>{this.forEachTrack(((e,a)=>{const n=new t({...s.options,composite:"override",[i]:s.get(a)});e.push(n)}))}));this.links=s,this.onDisposeLinks=e}addTrack(t,i){if(!(t instanceof HTMLElement||t instanceof SVGElement)||this.tracks.has(t))return;const s=new r(t,this.cache,this.align),e=this.lifeCycleAnimations.mount;this.tracks.add(t),this.trackList.splice(i,0,s),"mounted"===this.state&&e&&e.forEach((([t,i])=>s.push(this.clips[t],i)))}mergeInitialStyles(i,s){if(s in this.initialStyles)return this.initialStyles[s];const e=(this.lifeCycleAnimations.mount||[]).map((([t])=>this.clips[t])).filter((t=>!t.isEmpty));return e.length?i=t.mergeInitialStyles(e,i,"mounted"===s):this.parent&&(i=this.parent.mergeInitialStyles(i,s)),this.initialStyles[s]=i}pretime(t,i){if(t.isEmpty)return 0;const{duration:s,delay:e,iterations:a}=t.getConfig(i);return(s*a+e)/1e3+Math.max(Math.min(this.tracks.size,this.staggerLimit)-1,0)*this.stagger}trigger(t,i={}){let s=this.lifeCycleAnimations[t],e=0;return s&&s.forEach((([t,s])=>e=Math.max(this.play(t,Object.assign(s,i)),e))),e}play(t,{cascade:i="forward",delay:s=0,tag:e,...a}={}){if(this.paused||this.parent&&!e)return 0;let n="string"==typeof t?this.clips[t]:t;e&&e in this.clips&&(n=this.clips[e]),e||"string"!=typeof t||(e=t);const r=this.pretime(n,a),h=this.cascade(n,{...a,delay:"reverse"===i?s:r+s,tag:e});return this.push(n,{...a,delay:"reverse"===i?h+s:s,tag:e})}cascade(t,i){let s=0;return this.dependents.forEach((e=>{s=Math.max(s,e.play(t,i))})),s}forEachTrack(t){let i=0;for(;i<this.tracks.size;){const s=this.trackList[i];s.element.isConnected?t(s,i++):(this.tracks.delete(s.element),this.trackList.splice(i,1))}}push(t,{override:i,delay:s=0,tag:e,...a}){if(t.isEmpty)return 0;let n=0;return this.forEachTrack(((r,h)=>{i&&r.clear();const o=r.push(t,{...a,delay:s+Math.min(h,this.staggerLimit-1)*this.stagger},h===this.tracks.size-1?()=>this.dispatch("animationend",e):void 0);n=Math.max(n,o)})),n}transition(t,i=this.defaultTransitionOptions){this.paused||(this.trackList.forEach(((s,e)=>{const{cache:a}=t&&e<t.tracks.size?t.trackList[e]:{};s.transition(a,i)})),this.dispatch("transitionstart"))}setPlayState(t){this.trackList.forEach((i=>i.toggle(t))),this.paused=t,this.dependents.forEach((i=>i.setPlayState(t)))}stop(t){this.trackList.forEach((i=>i.clear(t)))}}export{o as default};
2
2
  //# sourceMappingURL=animator.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"animator.js","sources":["../../src/core/animator.ts"],"sourcesContent":[null],"names":["Animator","constructor","id","clips","lifeCycleAnimations","deformCorrection","transition","stagger","staggerLimit","this","parent","dependents","Set","inherit","links","onDisposeLinks","tracks","trackList","initialStyles","eventListeners","state","paused","timeout","frame","cache","options","ignoreScaleDeformation","undefined","defaultTransitionOptions","align","x","y","push","register","parentId","morph","clearTimeout","registerAnimator","registerAsMorph","getParentAnimator","add","key","mount","trigger","cancelAnimationFrame","tick","dispose","stop","forEach","track","snapshot","setTimeout","unregisterAnimator","deleteMorphTarget","delete","on","event","callback","off","dispatch","args","correct","requestAnimationFrame","bind","addLinks","animate","disposeLinks","extractAnimationLinks","link","forEachTrack","i","clip","Clip","composite","get","addTrack","element","index","HTMLElement","SVGElement","has","Track","animations","splice","name","mergeInitialStyles","styles","mode","map","filter","isEmpty","length","pretime","duration","delay","iterations","getConfig","Math","max","min","size","elapsed","animation","play","cascade","tag","cascadeDelay","animator","isConnected","override","clear","added","from","setPlayState","toggle"],"mappings":"+OAmBc,MAAOA,EAoCjB,WAAAC,EAAYC,GAAEA,EAAEC,MAAEA,EAAKC,oBAAEA,EAAmBC,iBAAEA,EAAgBC,WAAEA,EAAUC,QAAEA,EAAOC,aAAEA,IAjCrFC,KAAAC,OAA+B,KAC/BD,KAAAE,WAAiC,IAAIC,IACrCH,KAAAI,QAAyF,GAOzFJ,KAAAK,MAEI,CAAA,EACJL,KAAAM,eAAsC,KACtCN,KAAAO,OAAuB,IAAIJ,IAC3BH,KAAAQ,UAAqB,GAOrBR,KAAAS,cAGI,CAAA,EACJT,KAAAU,eAEI,CAAA,EACJV,KAAAW,MAAgD,YAChDX,KAAAY,QAAS,EACTZ,KAAAa,QAAU,EACVb,KAAAc,MAAQ,EAiBJ,MAAMC,MAAEA,KAAUC,GAAYnB,GAAc,CAAA,EAE5CG,KAAKP,GAAKA,EACVO,KAAKN,MAAQA,EACbM,KAAKL,oBAAsBA,EAC3BK,KAAKiB,4BAA8CC,IAArBtB,IAA0CA,EACxEI,KAAKmB,yBAA2BH,EAChChB,KAAKe,MAAQA,GAAS,CAAC,IAAK,IAAK,KAAM,KAAM,SAAU,gBACvDf,KAAKoB,MAAoC,iBAArBxB,EAAgCA,EAAmB,CAAEyB,EAAG,OAAQC,EAAG,OACvFtB,KAAKF,QAAUA,EACfE,KAAKD,aAAeA,OAEKmB,IAArBtB,GAAgCI,KAAKI,QAAQmB,KAAK,+BAC7BL,IAArBtB,GAAgCI,KAAKI,QAAQmB,KAAK,SACjD1B,GAAYG,KAAKI,QAAQmB,KAAK,4BAC9BR,GAAOf,KAAKI,QAAQmB,KAAK,QAClC,CAEA,QAAAC,CAASC,EAAkBrB,EAA2BsB,GAQlD,GAPAC,aAAa3B,KAAKa,SAClBe,EAAiB5B,KAAKP,GAAIO,MACtB0B,GAAOG,EAAgBH,EAAO1B,KAAKP,IAEnCgC,IAAwB,IAAZrB,IACZJ,KAAKC,OAAS6B,EAAkBL,EAA6B,kBAAZrB,EAAwB,EAAIA,IAE7EJ,KAAKC,OAAQ,CACbD,KAAKC,OAAOC,WAAW6B,IAAI/B,MAG3B,IAAK,MAAMgC,KAAOhC,KAAKI,QAASJ,KAAKgC,GAAOhC,KAAKC,OAAO+B,EAC5D,CACJ,CAEA,KAAAC,GACuB,cAAfjC,KAAKW,OAAuBX,KAAKkC,QAAQ,SAE7ClC,KAAKW,MAAQ,UAEbwB,qBAAqBnC,KAAKc,OAC1Bd,KAAKoC,MACT,CAEA,OAAAC,CAAQX,GACJ1B,KAAKsC,OACLtC,KAAKM,mBACL6B,qBAAqBnC,KAAKc,OAE1Bd,KAAKQ,UAAU+B,SAAQC,GAASA,EAAMzB,MAAQyB,EAAMC,aACpDzC,KAAKW,MAAQ,YAEbX,KAAKa,QAAU6B,YAAW,KACtBC,EAAmB3C,KAAKP,IACpBiC,GAAOkB,EAAkBlB,EAAO1B,KAAKP,IACrCO,KAAKC,QAAQD,KAAKC,OAAOC,WAAW2C,OAAO7C,KAAK,GACrD,EACP,CAEA,EAAA8C,CAAqCC,EAAsBC,GACjDD,KAAS/C,KAAKU,iBAAiBV,KAAKU,eAAeqC,GAAS,IAAI5C,KAEtEH,KAAKU,eAAeqC,GAAQhB,IAAIiB,EACpC,CAEA,GAAAC,CAAsCF,EAAsBC,GACxDhD,KAAKU,eAAeqC,IAAQF,OAAOG,EACvC,CAEA,QAAAE,CAASH,KAAyBI,GAC9BnD,KAAKU,eAAeqC,IAAQR,SAAQS,GAAYA,KAAYG,IAChE,CAEA,IAAAf,GACSpC,KAAKY,QAAQZ,KAAKQ,UAAU+B,SAAQC,IAChCxC,KAAKiB,wBAAwBuB,EAAMY,SAAS,IAGrDpD,KAAKc,MAAQuC,sBAAsBrD,KAAKoC,KAAKkB,KAAKtD,MACtD,CAEA,QAAAuD,CAASC,GACL,MAAOnD,EAAOoD,GAAgBC,EAAsBF,GAAS,CAACxB,EAAK2B,KAC/D3D,KAAK4D,cAAa,CAACpB,EAAOqB,KACtB,MAAMC,EAAO,IAAIC,EAAK,IACfJ,EAAK3C,QACRgD,UAAW,WACXhC,CAACA,GAAM2B,EAAKM,IAAIJ,KAGpBrB,EAAMjB,KAAKuC,EAAK,GAClB,IAGN9D,KAAKK,MAAQA,EACbL,KAAKM,eAAiBmD,CAC1B,CAEA,QAAAS,CAASC,EAAcC,GACnB,KAAMD,aAAmBE,aAAeF,aAAmBG,aAAetE,KAAKO,OAAOgE,IAAIJ,GAAU,OAEpG,MAAM3B,EAAQ,IAAIgC,EAAML,EAASnE,KAAKe,MAAOf,KAAKoB,OAC9CqD,EAAazE,KAAKL,oBAA2B,MAEjDK,KAAKO,OAAOwB,IAAIoC,GAChBnE,KAAKQ,UAAUkE,OAAON,EAAO,EAAG5B,GAEb,YAAfxC,KAAKW,OAAuB8D,GAAYA,EAAWlC,SAAQ,EAAEoC,EAAM3D,KAAawB,EAAMjB,KAAKvB,KAAKN,MAAMiF,GAAO3D,IACrH,CAEA,kBAAA4D,CAAmBC,EAAsBC,GACrC,GAAIA,KAAQ9E,KAAKS,cAAe,OAAOT,KAAKS,cAAcqE,GAE1D,MACIpF,GADeM,KAAKL,oBAAoBsC,OAAS,IAE5C8C,KAAI,EAAEJ,KAAU3E,KAAKN,MAAMiF,KAC3BK,QAAOlB,IAASA,EAAKmB,UAS9B,OAPIvF,EAAMwF,OACNL,EAASd,EAAKa,mBAAmBlF,EAAOmF,EAAiB,YAATC,GAE5C9E,KAAKC,SACL4E,EAAS7E,KAAKC,OAAO2E,mBAAmBC,EAAQC,IAGjD9E,KAAKS,cAAcqE,GAAQD,CACtC,CAEA,OAAAM,CAAQrB,EAAY9C,GAChB,GAAI8C,EAAKmB,QAAS,OAAO,EAEzB,MAAMG,SAAEA,EAAQC,MAAEA,EAAKC,WAAEA,GAAexB,EAAKyB,UAAUvE,GACvD,OAAQoE,EAAWE,EAAaD,GAAS,IAAOG,KAAKC,IAAID,KAAKE,IAAI1F,KAAKO,OAAOoF,KAAM3F,KAAKD,cAAgB,EAAG,GAAKC,KAAKF,OAC1H,CAEA,OAAAoC,CAAQY,EAAsB9B,EAA4B,IACtD,IAAIyD,EAAazE,KAAKL,oBAAoBmD,GACtC8C,EAAU,EAId,OAFInB,GAAYA,EAAWlC,SAAQsD,GAAaD,EAAUJ,KAAKC,IAAIzF,KAAK8F,QAAQD,GAAYD,KAErFA,CACX,CAEA,IAAAE,CAAKD,GAAqBE,QAAEA,EAAU,UAASV,MAAEA,EAAQ,EAACW,IAAEA,KAAQhF,GAA8B,IAC9F,GAAIhB,KAAKY,QAAWZ,KAAKC,SAAW+F,EAAM,OAAO,EAEjD,IAAIlC,EAA4B,iBAAd+B,EAAyB7F,KAAKN,MAAMmG,GAAaA,EAC/DG,GAAOA,KAAOhG,KAAKN,QAAOoE,EAAO9D,KAAKN,MAAMsG,IAC3CA,GAA4B,iBAAdH,IAAwBG,EAAMH,GAEjD,MAAMT,EAAWpF,KAAKmF,QAAQrB,EAAM9C,GAC9BiF,EAAejG,KAAK+F,QAAQjC,EAAM,IACjC9C,EACHqE,MAAmB,YAAZU,EAAwBV,EAAQD,EAAWC,EAClDW,QAGJ,OAAOhG,KAAKuB,KAAKuC,EAAM,IAChB9C,EACHqE,MAAmB,YAAZU,EAAwBE,EAAeZ,EAAQA,EACtDW,OAER,CAEA,OAAAD,CAAQjC,EAAY9C,GAChB,IAAI4E,EAAU,EAMd,OAJA5F,KAAKE,WAAWqC,SAAQ2D,IACpBN,EAAUJ,KAAKC,IAAIG,EAASM,EAASJ,KAAKhC,EAAM9C,GAAS,IAGtD4E,CACX,CAEA,YAAAhC,CAAaZ,GACT,IAAIa,EAAI,EAER,KAAOA,EAAI7D,KAAKO,OAAOoF,MAAM,CACzB,MAAMnD,EAAQxC,KAAKQ,UAAUqD,GAExBrB,EAAM2B,QAAQgC,YAMnBnD,EAASR,EAAOqB,MALZ7D,KAAKO,OAAOsC,OAAOL,EAAM2B,SACzBnE,KAAKQ,UAAUkE,OAAOb,EAAG,GAKjC,CACJ,CAEA,IAAAtC,CAAKuC,GAAYsC,SAAEA,EAAQf,MAAEA,EAAQ,EAACW,IAAEA,KAAQhF,IAC5C,GAAI8C,EAAKmB,QAAS,OAAO,EAEzB,IAAIW,EAAU,EAYd,OAXA5F,KAAK4D,cAAa,CAACpB,EAAOqB,KAClBuC,GAAU5D,EAAM6D,QAEpB,MAAMC,EAAQ9D,EAAMjB,KAAKuC,EAAM,IACxB9C,EACHqE,MAAOA,EAAQG,KAAKE,IAAI7B,EAAG7D,KAAKD,aAAe,GAAKC,KAAKF,SAC1D+D,IAAM7D,KAAKO,OAAOoF,KAAO,EAAI,IAAM3F,KAAKkD,SAAS,eAAgB8C,QAAO9E,GAE3E0E,EAAUJ,KAAKC,IAAIG,EAASU,EAAM,IAG/BV,CACX,CAEA,UAAA/F,CAAW0G,EAAsBvF,EAA6BhB,KAAKmB,0BAC3DnB,KAAKY,SAETZ,KAAKQ,UAAU+B,SAAQ,CAACC,EAAOqB,KAC3B,MAAM9C,MAAEA,GAAUwF,GAAQ1C,EAAI0C,EAAKhG,OAAOoF,KAAOY,EAAK/F,UAAUqD,GAAK,CAAA,EAErErB,EAAM3C,WAAWkB,EAAOC,EAAQ,IAGpChB,KAAKkD,SAAS,mBAClB,CAEA,YAAAsD,CAAa5F,GACTZ,KAAKQ,UAAU+B,SAAQC,GAASA,EAAMiE,OAAO7F,KAC7CZ,KAAKY,OAASA,EAEdZ,KAAKE,WAAWqC,SAAQ2D,GAAYA,EAASM,aAAa5F,IAC9D,CAEA,IAAA0B,CAAKuD,GACD7F,KAAKQ,UAAU+B,SAAQC,GAASA,EAAM6D,MAAMR,IAChD"}
1
+ {"version":3,"file":"animator.js","sources":["../../src/core/animator.ts"],"sourcesContent":[null],"names":["Animator","constructor","id","clips","lifeCycleAnimations","deformCorrection","transition","stagger","staggerLimit","this","parent","dependents","Set","inherit","links","onDisposeLinks","tracks","trackList","initialStyles","eventListeners","state","paused","timeout","frame","cache","options","ignoreScaleDeformation","undefined","defaultTransitionOptions","align","x","y","push","register","parentId","morph","clearTimeout","registerAnimator","registerAsMorph","getParentAnimator","add","key","mount","trigger","cancelAnimationFrame","tick","dispose","stop","forEach","track","snapshot","setTimeout","unregisterAnimator","deleteMorphTarget","delete","on","event","callback","off","dispatch","args","correct","requestAnimationFrame","bind","addLinks","animate","disposeLinks","extractAnimationLinks","link","forEachTrack","i","clip","Clip","composite","get","addTrack","element","index","HTMLElement","SVGElement","has","Track","animations","splice","name","mergeInitialStyles","styles","mode","map","filter","isEmpty","length","pretime","duration","delay","iterations","getConfig","Math","max","min","size","elapsed","opts","play","Object","assign","animation","cascade","tag","cascadeDelay","animator","isConnected","override","clear","added","from","setPlayState","toggle"],"mappings":"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"}
@@ -3,7 +3,7 @@ import Clip, { ClipInitials, ClipOptions } from "./core/clip";
3
3
  import { CacheKey, CorrectionAlignment } from "./core/track";
4
4
  import { TransitionOptions } from "./core/animation-link";
5
5
  export type AnimateTriggers<T extends string> = {
6
- [key in T]?: AnimationTrigger[] | ({
6
+ [key in T]?: (AnimationTrigger | {
7
7
  on: AnimationTrigger;
8
8
  } & AnimationOptions)[];
9
9
  };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@infinityfx/lively",
3
- "version": "5.0.0-alpha.3",
3
+ "version": "5.0.0-alpha.4",
4
4
  "type": "module",
5
5
  "description": "Feature complete, lightweight react animation library.",
6
6
  "main": "dist/index.js",