@drincs/pixi-vn 1.9.4 → 1.9.5

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/index.mjs CHANGED
@@ -1,2 +1,2 @@
1
- import {f,b,g as g$1,e,d,h,i}from'./chunk-K7JIC2F2.mjs';import*as D from'@drincs/pixi-vn/canvas';export*from'@drincs/pixi-vn/canvas';import*as $t from'@drincs/pixi-vn/characters';export*from'@drincs/pixi-vn/characters';import {PixiError,GameUnifier}from'@drincs/pixi-vn/core';export*from'@drincs/pixi-vn/core';import*as ot from'@drincs/pixi-vn/history';export*from'@drincs/pixi-vn/history';import*as O from'@drincs/pixi-vn/narration';export*from'@drincs/pixi-vn/narration';import*as _t from'@drincs/pixi-vn/sound';export*from'@drincs/pixi-vn/sound';import*as W from'@drincs/pixi-vn/storage';export*from'@drincs/pixi-vn/storage';import {tickers as tickers$1}from'@drincs/pixi-vn/tickers';export*from'@drincs/pixi-vn/tickers';import {GameWorkerManager}from'@drincs/pixi-vn/worker';export*from'@drincs/pixi-vn/worker';import {motion}from'@drincs/pixi-vn/motion';var ve=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,Zt=new Set,Ft=typeof process=="object"&&process?process:{},te=(_,e,i,s)=>{typeof Ft.emitWarning=="function"?Ft.emitWarning(_,e,i,s):console.error(`[${i}] ${e}: ${_}`);},jt=globalThis.AbortController,Xt=globalThis.AbortSignal;if(typeof jt>"u"){Xt=class{onabort;_onabort=[];reason;aborted=false;addEventListener(i,s){this._onabort.push(s);}},jt=class{constructor(){e();}signal=new Xt;abort(i){if(!this.signal.aborted){this.signal.reason=i,this.signal.aborted=true;for(let s of this.signal._onabort)s(i);this.signal.onabort?.(i);}}};let _=Ft.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",e=()=>{_&&(_=false,te("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",e));};}var ye=_=>!Zt.has(_);var dt=_=>_&&_===Math.floor(_)&&_>0&&isFinite(_),ee=_=>dt(_)?_<=Math.pow(2,8)?Uint8Array:_<=Math.pow(2,16)?Uint16Array:_<=Math.pow(2,32)?Uint32Array:_<=Number.MAX_SAFE_INTEGER?It:null:null,It=class extends Array{constructor(_){super(_),this.fill(0);}},lt,St,be=(lt=class{heap;length;static create(e){let i=ee(e);if(!i)return [];g$1(lt,St,true);let s=new lt(e,i);return g$1(lt,St,false),s}constructor(e$1,i){if(!e(lt,St))throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new i(e$1),this.length=0;}push(e){this.heap[this.length++]=e;}pop(){return this.heap[--this.length]}},St=new WeakMap,f(lt,St,false),lt),Jt,Qt,X,K,Q,vt,Z,Tt,wt,tt,I,et,R,E,g,k,Y,z,G,it,j,st,rt,q,B,nt,mt,V,xt,a,Mt,yt,ht,Ot,$,se,bt,Et,Lt,pt,ut,zt,Ct,Gt,x,kt,At,ft,Vt,Ut,ie=(Ut=class{constructor(e$1){f(this,a);f(this,X);f(this,K);f(this,Q);f(this,vt);f(this,Z);f(this,Tt);f(this,wt);f(this,tt);d(this,"ttl");d(this,"ttlResolution");d(this,"ttlAutopurge");d(this,"updateAgeOnGet");d(this,"updateAgeOnHas");d(this,"allowStale");d(this,"noDisposeOnSet");d(this,"noUpdateTTL");d(this,"maxEntrySize");d(this,"sizeCalculation");d(this,"noDeleteOnFetchRejection");d(this,"noDeleteOnStaleGet");d(this,"allowStaleOnFetchAbort");d(this,"allowStaleOnFetchRejection");d(this,"ignoreFetchAbort");f(this,I);f(this,et);f(this,R);f(this,E);f(this,g);f(this,k);f(this,Y);f(this,z);f(this,G);f(this,it);f(this,j);f(this,st);f(this,rt);f(this,q);f(this,B);f(this,nt);f(this,mt);f(this,V);f(this,xt);f(this,yt,()=>{});f(this,ht,()=>{});f(this,Ot,()=>{});f(this,$,()=>false);f(this,bt,e=>{});f(this,Et,(e,i,s)=>{});f(this,Lt,(e,i,s,r)=>{if(s||r)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0});d(this,Jt,"LRUCache");let{max:i=0,ttl:s,ttlResolution:r=1,ttlAutopurge:o,updateAgeOnGet:n,updateAgeOnHas:l,allowStale:c,dispose:y,onInsert:U,disposeAfter:S,noDisposeOnSet:M,noUpdateTTL:N,maxSize:H=0,maxEntrySize:f$1=0,sizeCalculation:v,fetchMethod:m,memoMethod:L,noDeleteOnFetchRejection:A,noDeleteOnStaleGet:d$1,allowStaleOnFetchRejection:T,allowStaleOnFetchAbort:at,ignoreFetchAbort:u,perf:w}=e$1;if(w!==void 0&&typeof w?.now!="function")throw new TypeError("perf option must have a now() method if specified");if(g$1(this,tt,w??ve),i!==0&&!dt(i))throw new TypeError("max option must be a nonnegative integer");let C=i?ee(i):Array;if(!C)throw new Error("invalid max value: "+i);if(g$1(this,X,i),g$1(this,K,H),this.maxEntrySize=f$1||e(this,K),this.sizeCalculation=v,this.sizeCalculation){if(!e(this,K)&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(L!==void 0&&typeof L!="function")throw new TypeError("memoMethod must be a function if defined");if(g$1(this,wt,L),m!==void 0&&typeof m!="function")throw new TypeError("fetchMethod must be a function if specified");if(g$1(this,Tt,m),g$1(this,mt,!!m),g$1(this,R,new Map),g$1(this,E,new Array(i).fill(void 0)),g$1(this,g,new Array(i).fill(void 0)),g$1(this,k,new C(i)),g$1(this,Y,new C(i)),g$1(this,z,0),g$1(this,G,0),g$1(this,it,be.create(i)),g$1(this,I,0),g$1(this,et,0),typeof y=="function"&&g$1(this,Q,y),typeof U=="function"&&g$1(this,vt,U),typeof S=="function"?(g$1(this,Z,S),g$1(this,j,[])):(g$1(this,Z,void 0),g$1(this,j,void 0)),g$1(this,nt,!!e(this,Q)),g$1(this,xt,!!e(this,vt)),g$1(this,V,!!e(this,Z)),this.noDisposeOnSet=!!M,this.noUpdateTTL=!!N,this.noDeleteOnFetchRejection=!!A,this.allowStaleOnFetchRejection=!!T,this.allowStaleOnFetchAbort=!!at,this.ignoreFetchAbort=!!u,this.maxEntrySize!==0){if(e(this,K)!==0&&!dt(e(this,K)))throw new TypeError("maxSize must be a positive integer if specified");if(!dt(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");h(this,a,se).call(this);}if(this.allowStale=!!c,this.noDeleteOnStaleGet=!!d$1,this.updateAgeOnGet=!!n,this.updateAgeOnHas=!!l,this.ttlResolution=dt(r)||r===0?r:1,this.ttlAutopurge=!!o,this.ttl=s||0,this.ttl){if(!dt(this.ttl))throw new TypeError("ttl must be a positive integer if specified");h(this,a,Mt).call(this);}if(e(this,X)===0&&this.ttl===0&&e(this,K)===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!e(this,X)&&!e(this,K)){let J="LRU_CACHE_UNBOUNDED";ye(J)&&(Zt.add(J),te("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",J,Ut));}}get perf(){return e(this,tt)}static unsafeExposeInternals(e$1){return {starts:e(e$1,rt),ttls:e(e$1,q),autopurgeTimers:e(e$1,B),sizes:e(e$1,st),keyMap:e(e$1,R),keyList:e(e$1,E),valList:e(e$1,g),next:e(e$1,k),prev:e(e$1,Y),get head(){return e(e$1,z)},get tail(){return e(e$1,G)},free:e(e$1,it),isBackgroundFetch:i=>{var s;return h(s=e$1,a,x).call(s,i)},backgroundFetch:(i,s,r,o)=>{var n;return h(n=e$1,a,Gt).call(n,i,s,r,o)},moveToTail:i=>{var s;return h(s=e$1,a,At).call(s,i)},indexes:i=>{var s;return h(s=e$1,a,pt).call(s,i)},rindexes:i=>{var s;return h(s=e$1,a,ut).call(s,i)},isStale:i=>{var s;return e(s=e$1,$).call(s,i)}}}get max(){return e(this,X)}get maxSize(){return e(this,K)}get calculatedSize(){return e(this,et)}get size(){return e(this,I)}get fetchMethod(){return e(this,Tt)}get memoMethod(){return e(this,wt)}get dispose(){return e(this,Q)}get onInsert(){return e(this,vt)}get disposeAfter(){return e(this,Z)}getRemainingTTL(e$1){return e(this,R).has(e$1)?1/0:0}*entries(){for(let e$1 of h(this,a,pt).call(this))e(this,g)[e$1]!==void 0&&e(this,E)[e$1]!==void 0&&!h(this,a,x).call(this,e(this,g)[e$1])&&(yield [e(this,E)[e$1],e(this,g)[e$1]]);}*rentries(){for(let e$1 of h(this,a,ut).call(this))e(this,g)[e$1]!==void 0&&e(this,E)[e$1]!==void 0&&!h(this,a,x).call(this,e(this,g)[e$1])&&(yield [e(this,E)[e$1],e(this,g)[e$1]]);}*keys(){for(let e$1 of h(this,a,pt).call(this)){let i=e(this,E)[e$1];i!==void 0&&!h(this,a,x).call(this,e(this,g)[e$1])&&(yield i);}}*rkeys(){for(let e$1 of h(this,a,ut).call(this)){let i=e(this,E)[e$1];i!==void 0&&!h(this,a,x).call(this,e(this,g)[e$1])&&(yield i);}}*values(){for(let e$1 of h(this,a,pt).call(this))e(this,g)[e$1]!==void 0&&!h(this,a,x).call(this,e(this,g)[e$1])&&(yield e(this,g)[e$1]);}*rvalues(){for(let e$1 of h(this,a,ut).call(this))e(this,g)[e$1]!==void 0&&!h(this,a,x).call(this,e(this,g)[e$1])&&(yield e(this,g)[e$1]);}[(Qt=Symbol.iterator,Jt=Symbol.toStringTag,Qt)](){return this.entries()}find(e$1,i={}){for(let s of h(this,a,pt).call(this)){let r=e(this,g)[s],o=h(this,a,x).call(this,r)?r.__staleWhileFetching:r;if(o!==void 0&&e$1(o,e(this,E)[s],this))return this.get(e(this,E)[s],i)}}forEach(e$1,i=this){for(let s of h(this,a,pt).call(this)){let r=e(this,g)[s],o=h(this,a,x).call(this,r)?r.__staleWhileFetching:r;o!==void 0&&e$1.call(i,o,e(this,E)[s],this);}}rforEach(e$1,i=this){for(let s of h(this,a,ut).call(this)){let r=e(this,g)[s],o=h(this,a,x).call(this,r)?r.__staleWhileFetching:r;o!==void 0&&e$1.call(i,o,e(this,E)[s],this);}}purgeStale(){let e$1=false;for(let i of h(this,a,ut).call(this,{allowStale:true}))e(this,$).call(this,i)&&(h(this,a,ft).call(this,e(this,E)[i],"expire"),e$1=true);return e$1}info(e$1){let i=e(this,R).get(e$1);if(i===void 0)return;let s=e(this,g)[i],r=h(this,a,x).call(this,s)?s.__staleWhileFetching:s;if(r===void 0)return;let o={value:r};if(e(this,q)&&e(this,rt)){let n=e(this,q)[i],l=e(this,rt)[i];if(n&&l){let c=n-(e(this,tt).now()-l);o.ttl=c,o.start=Date.now();}}return e(this,st)&&(o.size=e(this,st)[i]),o}dump(){let e$1=[];for(let i of h(this,a,pt).call(this,{allowStale:true})){let s=e(this,E)[i],r=e(this,g)[i],o=h(this,a,x).call(this,r)?r.__staleWhileFetching:r;if(o===void 0||s===void 0)continue;let n={value:o};if(e(this,q)&&e(this,rt)){n.ttl=e(this,q)[i];let l=e(this,tt).now()-e(this,rt)[i];n.start=Math.floor(Date.now()-l);}e(this,st)&&(n.size=e(this,st)[i]),e$1.unshift([s,n]);}return e$1}load(e$1){this.clear();for(let[i,s]of e$1){if(s.start){let r=Date.now()-s.start;s.start=e(this,tt).now()-r;}this.set(i,s.value,s);}}set(e$1,i$1,s={}){var M,N,H,f;if(i$1===void 0)return this.delete(e$1),this;let{ttl:r=this.ttl,start:o,noDisposeOnSet:n=this.noDisposeOnSet,sizeCalculation:l=this.sizeCalculation,status:c}=s,{noUpdateTTL:y=this.noUpdateTTL}=s,U=e(this,Lt).call(this,e$1,i$1,s.size||0,l);if(this.maxEntrySize&&U>this.maxEntrySize)return c&&(c.set="miss",c.maxEntrySizeExceeded=true),h(this,a,ft).call(this,e$1,"set"),this;let S=e(this,I)===0?void 0:e(this,R).get(e$1);if(S===void 0)S=e(this,I)===0?e(this,G):e(this,it).length!==0?e(this,it).pop():e(this,I)===e(this,X)?h(this,a,Ct).call(this,false):e(this,I),e(this,E)[S]=e$1,e(this,g)[S]=i$1,e(this,R).set(e$1,S),e(this,k)[e(this,G)]=S,e(this,Y)[S]=e(this,G),g$1(this,G,S),i(this,I)._++,e(this,Et).call(this,S,U,c),c&&(c.set="add"),y=false,e(this,xt)&&((M=e(this,vt))==null||M.call(this,i$1,e$1,"add"));else {h(this,a,At).call(this,S);let v=e(this,g)[S];if(i$1!==v){if(e(this,mt)&&h(this,a,x).call(this,v)){v.__abortController.abort(new Error("replaced"));let{__staleWhileFetching:m}=v;m!==void 0&&!n&&(e(this,nt)&&((N=e(this,Q))==null||N.call(this,m,e$1,"set")),e(this,V)&&e(this,j)?.push([m,e$1,"set"]));}else n||(e(this,nt)&&((H=e(this,Q))==null||H.call(this,v,e$1,"set")),e(this,V)&&e(this,j)?.push([v,e$1,"set"]));if(e(this,bt).call(this,S),e(this,Et).call(this,S,U,c),e(this,g)[S]=i$1,c){c.set="replace";let m=v&&h(this,a,x).call(this,v)?v.__staleWhileFetching:v;m!==void 0&&(c.oldValue=m);}}else c&&(c.set="update");e(this,xt)&&this.onInsert?.(i$1,e$1,i$1===v?"update":"replace");}if(r!==0&&!e(this,q)&&h(this,a,Mt).call(this),e(this,q)&&(y||e(this,Ot).call(this,S,r,o),c&&e(this,ht).call(this,c,S)),!n&&e(this,V)&&e(this,j)){let v=e(this,j),m;for(;m=v?.shift();)(f=e(this,Z))==null||f.call(this,...m);}return this}pop(){var e$1;try{for(;e(this,I);){let i=e(this,g)[e(this,z)];if(h(this,a,Ct).call(this,!0),h(this,a,x).call(this,i)){if(i.__staleWhileFetching)return i.__staleWhileFetching}else if(i!==void 0)return i}}finally{if(e(this,V)&&e(this,j)){let i=e(this,j),s;for(;s=i?.shift();)(e$1=e(this,Z))==null||e$1.call(this,...s);}}}has(e$1,i={}){let{updateAgeOnHas:s=this.updateAgeOnHas,status:r}=i,o=e(this,R).get(e$1);if(o!==void 0){let n=e(this,g)[o];if(h(this,a,x).call(this,n)&&n.__staleWhileFetching===void 0)return false;if(e(this,$).call(this,o))r&&(r.has="stale",e(this,ht).call(this,r,o));else return s&&e(this,yt).call(this,o),r&&(r.has="hit",e(this,ht).call(this,r,o)),true}else r&&(r.has="miss");return false}peek(e$1,i={}){let{allowStale:s=this.allowStale}=i,r=e(this,R).get(e$1);if(r===void 0||!s&&e(this,$).call(this,r))return;let o=e(this,g)[r];return h(this,a,x).call(this,o)?o.__staleWhileFetching:o}async fetch(e$1,i={}){let{allowStale:s=this.allowStale,updateAgeOnGet:r=this.updateAgeOnGet,noDeleteOnStaleGet:o=this.noDeleteOnStaleGet,ttl:n=this.ttl,noDisposeOnSet:l=this.noDisposeOnSet,size:c=0,sizeCalculation:y=this.sizeCalculation,noUpdateTTL:U=this.noUpdateTTL,noDeleteOnFetchRejection:S=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:M=this.allowStaleOnFetchRejection,ignoreFetchAbort:N=this.ignoreFetchAbort,allowStaleOnFetchAbort:H=this.allowStaleOnFetchAbort,context:f,forceRefresh:v=false,status:m,signal:L}=i;if(!e(this,mt))return m&&(m.fetch="get"),this.get(e$1,{allowStale:s,updateAgeOnGet:r,noDeleteOnStaleGet:o,status:m});let A={allowStale:s,updateAgeOnGet:r,noDeleteOnStaleGet:o,ttl:n,noDisposeOnSet:l,size:c,sizeCalculation:y,noUpdateTTL:U,noDeleteOnFetchRejection:S,allowStaleOnFetchRejection:M,allowStaleOnFetchAbort:H,ignoreFetchAbort:N,status:m,signal:L},d=e(this,R).get(e$1);if(d===void 0){m&&(m.fetch="miss");let T=h(this,a,Gt).call(this,e$1,d,A,f);return T.__returned=T}else {let T=e(this,g)[d];if(h(this,a,x).call(this,T)){let C=s&&T.__staleWhileFetching!==void 0;return m&&(m.fetch="inflight",C&&(m.returnedStale=true)),C?T.__staleWhileFetching:T.__returned=T}let at=e(this,$).call(this,d);if(!v&&!at)return m&&(m.fetch="hit"),h(this,a,At).call(this,d),r&&e(this,yt).call(this,d),m&&e(this,ht).call(this,m,d),T;let u=h(this,a,Gt).call(this,e$1,d,A,f),w=u.__staleWhileFetching!==void 0&&s;return m&&(m.fetch=at?"stale":"refresh",w&&at&&(m.returnedStale=true)),w?u.__staleWhileFetching:u.__returned=u}}async forceFetch(e,i={}){let s=await this.fetch(e,i);if(s===void 0)throw new Error("fetch() returned undefined");return s}memo(e$1,i={}){let s=e(this,wt);if(!s)throw new Error("no memoMethod provided to constructor");let{context:r,forceRefresh:o,...n}=i,l=this.get(e$1,n);if(!o&&l!==void 0)return l;let c=s(e$1,l,{options:n,context:r});return this.set(e$1,c,n),c}get(e$1,i={}){let{allowStale:s=this.allowStale,updateAgeOnGet:r=this.updateAgeOnGet,noDeleteOnStaleGet:o=this.noDeleteOnStaleGet,status:n}=i,l=e(this,R).get(e$1);if(l!==void 0){let c=e(this,g)[l],y=h(this,a,x).call(this,c);return n&&e(this,ht).call(this,n,l),e(this,$).call(this,l)?(n&&(n.get="stale"),y?(n&&s&&c.__staleWhileFetching!==void 0&&(n.returnedStale=true),s?c.__staleWhileFetching:void 0):(o||h(this,a,ft).call(this,e$1,"expire"),n&&s&&(n.returnedStale=true),s?c:void 0)):(n&&(n.get="hit"),y?c.__staleWhileFetching:(h(this,a,At).call(this,l),r&&e(this,yt).call(this,l),c))}else n&&(n.get="miss");}delete(e){return h(this,a,ft).call(this,e,"delete")}clear(){return h(this,a,Vt).call(this,"delete")}},X=new WeakMap,K=new WeakMap,Q=new WeakMap,vt=new WeakMap,Z=new WeakMap,Tt=new WeakMap,wt=new WeakMap,tt=new WeakMap,I=new WeakMap,et=new WeakMap,R=new WeakMap,E=new WeakMap,g=new WeakMap,k=new WeakMap,Y=new WeakMap,z=new WeakMap,G=new WeakMap,it=new WeakMap,j=new WeakMap,st=new WeakMap,rt=new WeakMap,q=new WeakMap,B=new WeakMap,nt=new WeakMap,mt=new WeakMap,V=new WeakMap,xt=new WeakMap,a=new WeakSet,Mt=function(){let e$1=new It(e(this,X)),i=new It(e(this,X));g$1(this,q,e$1),g$1(this,rt,i);let s=this.ttlAutopurge?new Array(e(this,X)):void 0;g$1(this,B,s),g$1(this,Ot,(l,c,y=e(this,tt).now())=>{i[l]=c!==0?y:0,e$1[l]=c,r(l,c);}),g$1(this,yt,l=>{i[l]=e$1[l]!==0?e(this,tt).now():0,r(l,e$1[l]);});let r=this.ttlAutopurge?(l,c)=>{if(s?.[l]&&(clearTimeout(s[l]),s[l]=void 0),c&&c!==0&&s){let y=setTimeout(()=>{e(this,$).call(this,l)&&h(this,a,ft).call(this,e(this,E)[l],"expire");},c+1);y.unref&&y.unref(),s[l]=y;}}:()=>{};g$1(this,ht,(l,c)=>{if(e$1[c]){let y=e$1[c],U=i[c];if(!y||!U)return;l.ttl=y,l.start=U,l.now=o||n();let S=l.now-U;l.remainingTTL=y-S;}});let o=0,n=()=>{let l=e(this,tt).now();if(this.ttlResolution>0){o=l;let c=setTimeout(()=>o=0,this.ttlResolution);c.unref&&c.unref();}return l};this.getRemainingTTL=l=>{let c=e(this,R).get(l);if(c===void 0)return 0;let y=e$1[c],U=i[c];if(!y||!U)return 1/0;let S=(o||n())-U;return y-S},g$1(this,$,l=>{let c=i[l],y=e$1[l];return !!y&&!!c&&(o||n())-c>y});},yt=new WeakMap,ht=new WeakMap,Ot=new WeakMap,$=new WeakMap,se=function(){let e$1=new It(e(this,X));g$1(this,et,0),g$1(this,st,e$1),g$1(this,bt,i=>{g$1(this,et,e(this,et)-e$1[i]),e$1[i]=0;}),g$1(this,Lt,(i,s,r,o)=>{if(h(this,a,x).call(this,s))return 0;if(!dt(r))if(o){if(typeof o!="function")throw new TypeError("sizeCalculation must be a function");if(r=o(s,i),!dt(r))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return r}),g$1(this,Et,(i,s,r)=>{if(e$1[i]=s,e(this,K)){let o=e(this,K)-e$1[i];for(;e(this,et)>o;)h(this,a,Ct).call(this,true);}g$1(this,et,e(this,et)+e$1[i]),r&&(r.entrySize=s,r.totalCalculatedSize=e(this,et));});},bt=new WeakMap,Et=new WeakMap,Lt=new WeakMap,pt=function*({allowStale:e$1=this.allowStale}={}){if(e(this,I))for(let i=e(this,G);!(!h(this,a,zt).call(this,i)||((e$1||!e(this,$).call(this,i))&&(yield i),i===e(this,z)));)i=e(this,Y)[i];},ut=function*({allowStale:e$1=this.allowStale}={}){if(e(this,I))for(let i=e(this,z);!(!h(this,a,zt).call(this,i)||((e$1||!e(this,$).call(this,i))&&(yield i),i===e(this,G)));)i=e(this,k)[i];},zt=function(e$1){return e$1!==void 0&&e(this,R).get(e(this,E)[e$1])===e$1},Ct=function(e$1){var o;let i$1=e(this,z),s=e(this,E)[i$1],r=e(this,g)[i$1];return e(this,mt)&&h(this,a,x).call(this,r)?r.__abortController.abort(new Error("evicted")):(e(this,nt)||e(this,V))&&(e(this,nt)&&((o=e(this,Q))==null||o.call(this,r,s,"evict")),e(this,V)&&e(this,j)?.push([r,s,"evict"])),e(this,bt).call(this,i$1),e(this,B)?.[i$1]&&(clearTimeout(e(this,B)[i$1]),e(this,B)[i$1]=void 0),e$1&&(e(this,E)[i$1]=void 0,e(this,g)[i$1]=void 0,e(this,it).push(i$1)),e(this,I)===1?(g$1(this,z,g$1(this,G,0)),e(this,it).length=0):g$1(this,z,e(this,k)[i$1]),e(this,R).delete(s),i(this,I)._--,i$1},Gt=function(e$1,i,s,r){let o=i===void 0?void 0:e(this,g)[i];if(h(this,a,x).call(this,o))return o;let n=new jt,{signal:l}=s;l?.addEventListener("abort",()=>n.abort(l.reason),{signal:n.signal});let c={signal:n.signal,options:s,context:r},y=(f,v=false)=>{let{aborted:m}=n.signal,L=s.ignoreFetchAbort&&f!==void 0,A=s.ignoreFetchAbort||!!(s.allowStaleOnFetchAbort&&f!==void 0);if(s.status&&(m&&!v?(s.status.fetchAborted=true,s.status.fetchError=n.signal.reason,L&&(s.status.fetchAbortIgnored=true)):s.status.fetchResolved=true),m&&!L&&!v)return S(n.signal.reason,A);let d=N,T=e(this,g)[i];return (T===N||L&&v&&T===void 0)&&(f===void 0?d.__staleWhileFetching!==void 0?e(this,g)[i]=d.__staleWhileFetching:h(this,a,ft).call(this,e$1,"fetch"):(s.status&&(s.status.fetchUpdated=true),this.set(e$1,f,c.options))),f},U=f=>(s.status&&(s.status.fetchRejected=true,s.status.fetchError=f),S(f,false)),S=(f,v)=>{let{aborted:m}=n.signal,L=m&&s.allowStaleOnFetchAbort,A=L||s.allowStaleOnFetchRejection,d=A||s.noDeleteOnFetchRejection,T=N;if(e(this,g)[i]===N&&(!d||!v&&T.__staleWhileFetching===void 0?h(this,a,ft).call(this,e$1,"fetch"):L||(e(this,g)[i]=T.__staleWhileFetching)),A)return s.status&&T.__staleWhileFetching!==void 0&&(s.status.returnedStale=true),T.__staleWhileFetching;if(T.__returned===T)throw f},M=(f,v)=>{var L;let m=(L=e(this,Tt))==null?void 0:L.call(this,e$1,o,c);m&&m instanceof Promise&&m.then(A=>f(A===void 0?void 0:A),v),n.signal.addEventListener("abort",()=>{(!s.ignoreFetchAbort||s.allowStaleOnFetchAbort)&&(f(void 0),s.allowStaleOnFetchAbort&&(f=A=>y(A,true)));});};s.status&&(s.status.fetchDispatched=true);let N=new Promise(M).then(y,U),H=Object.assign(N,{__abortController:n,__staleWhileFetching:o,__returned:void 0});return i===void 0?(this.set(e$1,H,{...c.options,status:void 0}),i=e(this,R).get(e$1)):e(this,g)[i]=H,H},x=function(e$1){if(!e(this,mt))return false;let i=e$1;return !!i&&i instanceof Promise&&i.hasOwnProperty("__staleWhileFetching")&&i.__abortController instanceof jt},kt=function(e$1,i){e(this,Y)[i]=e$1,e(this,k)[e$1]=i;},At=function(e$1){e$1!==e(this,G)&&(e$1===e(this,z)?g$1(this,z,e(this,k)[e$1]):h(this,a,kt).call(this,e(this,Y)[e$1],e(this,k)[e$1]),h(this,a,kt).call(this,e(this,G),e$1),g$1(this,G,e$1));},ft=function(e$1,i$1){var r,o;let s=false;if(e(this,I)!==0){let n=e(this,R).get(e$1);if(n!==void 0)if(e(this,B)?.[n]&&(clearTimeout(e(this,B)?.[n]),e(this,B)[n]=void 0),s=true,e(this,I)===1)h(this,a,Vt).call(this,i$1);else {e(this,bt).call(this,n);let l=e(this,g)[n];if(h(this,a,x).call(this,l)?l.__abortController.abort(new Error("deleted")):(e(this,nt)||e(this,V))&&(e(this,nt)&&((r=e(this,Q))==null||r.call(this,l,e$1,i$1)),e(this,V)&&e(this,j)?.push([l,e$1,i$1])),e(this,R).delete(e$1),e(this,E)[n]=void 0,e(this,g)[n]=void 0,n===e(this,G))g$1(this,G,e(this,Y)[n]);else if(n===e(this,z))g$1(this,z,e(this,k)[n]);else {let c=e(this,Y)[n];e(this,k)[c]=e(this,k)[n];let y=e(this,k)[n];e(this,Y)[y]=e(this,Y)[n];}i(this,I)._--,e(this,it).push(n);}}if(e(this,V)&&e(this,j)?.length){let n=e(this,j),l;for(;l=n?.shift();)(o=e(this,Z))==null||o.call(this,...l);}return s},Vt=function(e$1){var i,s;for(let r of h(this,a,ut).call(this,{allowStale:true})){let o=e(this,g)[r];if(h(this,a,x).call(this,o))o.__abortController.abort(new Error("deleted"));else {let n=e(this,E)[r];e(this,nt)&&((i=e(this,Q))==null||i.call(this,o,n,e$1)),e(this,V)&&e(this,j)?.push([o,n,e$1]);}}if(e(this,R).clear(),e(this,g).fill(void 0),e(this,E).fill(void 0),e(this,q)&&e(this,rt)){e(this,q).fill(0),e(this,rt).fill(0);for(let r of e(this,B)??[])r!==void 0&&clearTimeout(r);e(this,B)?.fill(void 0);}if(e(this,st)&&e(this,st).fill(0),g$1(this,z,0),g$1(this,G,0),e(this,it).length=0,g$1(this,et,0),g$1(this,I,0),e(this,V)&&e(this,j)){let r=e(this,j),o;for(;o=r?.shift();)(s=e(this,Z))==null||s.call(this,...o);}},Ut);var Dt=class{cache;map=new Map;constructor(e){this.cache=new ie({max:e.cacheSize}),this.map=new Map;}get[Symbol.iterator](){return this.map[Symbol.iterator]}get[Symbol.toStringTag](){return this.map[Symbol.toStringTag]}clear(){this.cache.clear(),this.map.clear();}delete(e){let i=this.map.delete(e);return i&&this.cache.delete(e),i}get forEach(){return this.map.forEach}get(e){let i=this.cache.get(e);return i||this.map.get(e)}has(e){return this.map.has(e)}set(e,i){return this.map.set(e,i),this.cache.set(e,i),this}get size(){return this.map.size}entries(){return this.map.entries()}keys(){return this.map.keys()}values(){return this.map.values()}};var Rt="1.9.4";var Ht={version:Rt};var Wt="__game_layer__";var Se={CURRENT_DIALOGUE_MEMORY_KEY:"dialogue",LAST_DIALOGUE_ADDED_IN_STEP_MEMORY_KEY:"dialogue:step_counter",CURRENT_MENU_OPTIONS_MEMORY_KEY:"choice:options",LAST_MENU_OPTIONS_ADDED_IN_STEP_MEMORY_KEY:"choice:step_counter",CURRENT_INPUT_VALUE_MEMORY_KEY:"input:value",LAST_INPUT_ADDED_IN_STEP_MEMORY_KEY:"input:step_counter",CURRENT_INPUT_INFO_MEMORY_KEY:"input:info",CHARACTER_CATEGORY_KEY:"character",ADD_NEXT_DIALOG_TEXT_INTO_THE_CURRENT_DIALOG_FLAG_KEY:"___glue___",OPENED_LABELS_COUNTER_KEY:"label:opened",ALL_CHOICES_MADE_KEY:"choices:made",CURRENT_STEP_TIMES_COUNTER_KEY:"label:history",LAST_STEP_GLUED:"glue:last_step"};var ne={};var Kt={};b(Kt,{createExportableElement:()=>oe});var gt;(r=>(r.log=(o,...n)=>console.log(`[Pixi\u2019VN] ${o}`,...n),r.warn=(o,...n)=>console.warn(`[Pixi\u2019VN] ${o}`,...n),r.error=(o,...n)=>console.error(`[Pixi\u2019VN] ${o}`,...n),r.info=(o,...n)=>console.info(`[Pixi\u2019VN] ${o}`,...n)))(gt||={});function oe(_){try{if(typeof _>"u")return _;let e=JSON.stringify(_);return JSON.parse(e)}catch(e){throw gt.error("Error creating exportable element",_,e),new PixiError("not_json_serializable","Error creating exportable element")}}function le(_){let e,i={},s={};function r(y){i=y;}function o(y){s=y;}function n(y){e&&l();let U=y?.windowKey??"pixiVN",S=[],M=f=>({...i,...f}),N={Game:_,narration:O.narration,storage:W.storage,stepHistory:ot.stepHistory,get props(){return i},start:(f,v)=>s.start?s.start(f,v):_.start(f,M(v)),continue:(f,v)=>s.continue?s.continue():O.narration.continue(M(f),v),call:(f,v)=>s.call?s.call(f,v):O.narration.call(f,M(v)),jump:(f,v)=>s.jump?s.jump(f,v):O.narration.jump(f,M(v)),selectChoice:(f,v)=>{let m=O.narration.choices.list?.find(L=>L.choiceIndex===f);if(!m){let L=O.narration.choices.list?.map(A=>A.choiceIndex).join(", ")??"none (no choice menu is open)";throw new Error(`Game.testing: no open choice with index ${f}. Available: ${L}`)}return s.selectChoice?s.selectChoice(m):O.narration.choices.select(m,M(v))},setInput:f=>{O.narration.input.value=f;},goBack:(f,v)=>s.back?s.back():ot.stepHistory.back(M(f),v),closeCurrentLabel:()=>O.narration.labels.closeCurrent(),closeAllLabels:()=>O.narration.labels.closeAll(),getState:()=>({dialogue:O.narration.dialogue,dialogueGlue:O.narration.dialogGlue,choices:O.narration.choices.list,input:{isRequired:O.narration.input.isRequired,type:O.narration.input.type,value:O.narration.input.value},canContinue:O.narration.canContinue,canGoBack:ot.stepHistory.canGoBack,labelsOpened:O.narration.labels.opened,currentLabelId:O.narration.labels.current?.id,stepCounter:O.narration.stepCounter}),get errors(){return S.slice()},clearErrors:()=>{S.length=0;}},H=f=>{S.push({error:f,timestamp:Date.now()});};return _.addOnError(H),typeof window<"u"?window[U]=N:gt.warn('Game.testing.enable(): "window" is not defined, so the API was not attached globally (it was still returned).'),e={api:N,windowKey:U,errorHandler:H},N}function l(){e&&(_.removeOnError(e.errorHandler),typeof window<"u"&&window[e.windowKey]===e.api&&delete window[e.windowKey],e=void 0);}function c(){return e!==void 0}return {setProps:r,setActions:o,enable:n,disable:l,isEnabled:c}}var we=typeof window<"u"&&typeof document<"u",he=[" _______ _ _ _ ____ ____ ____ _____ ","|_ __ \\ (_) (_) | | |_ _| |_ _||_ \\|_ _|"," | |__) |__ _ __ __ \\_| \\ \\ / / | \\ | | "," | ___/[ | [ \\ [ ][ | \\ \\ / / | |\\ \\| | "," _| |_ | | > ' < | | \\ ' / _| |_\\ |_ ",`|_____| [___][__]\`\\_][___] \\_/ |_____|\\____| v${Ht.version}`],ce=31,xe="background:#2f90da;color:#fff;font-weight:bold;",Ee="background:#c832bb;color:#fff;font-weight:bold;",Ue="background:transparent;font-weight:bold;",Yt=` v${Ht.version}`;function de(){if(!we)return;let _=[],e=[];for(let i=0;i<he.length;i++){let s=he[i],r=s.endsWith(Yt),o=r?s.slice(0,-Yt.length):s,n=o.slice(0,ce),l=o.slice(ce),c=r?"%c%s%c%s%c%s":"%c%s%c%s";_.push(c),e.push(xe,n,Ee,l),r&&e.push(Ue,Yt);}console.info(_.join(`
2
- `),...e);}function qt(){let _=window.location.pathname+window.location.hash;return _.includes("#")&&(_=_.split("#")[1]),_}de();var ue;(A=>{async function _(d,T,at){if(GameUnifier.init({navigate:T?.navigate,getCurrentGameStepState:async()=>{let u=D.canvas.isInitialized?D.canvas.export():{};return {path:qt(),storage:await W.storage.export(),canvas:u,sound:_t.sound.export(),labelIndex:O.NarrationManagerStatic.currentLabelStepIndex||0,openedLabels:O.narration.openedLabels}},restoreGameStepState:async(u,w)=>{ot.HistoryManagerStatic._originalStepData=u,O.NarrationManagerStatic.openedLabels=u.openedLabels,W.storage.restore(u.storage);try{D.canvas.isInitialized&&await D.canvas.restore(u.canvas),await _t.sound.restore(u.sound);}catch(C){gt.error("Error restoring game step state:",C);}await w(u.path);},getStepCounter:()=>O.narration.stepCounter,setStepCounter:u=>{O.NarrationManagerStatic._stepCounter=u;},getOpenedLabels:()=>O.narration.openedLabels.length,addHistoryItem:(u,w)=>ot.stepHistory.add(u,w),getCharacter:u=>$t.RegisteredCharacters.get(u),processNavigationRequests:(u,w)=>{let C=u,J=Promise.resolve();return u>0?(C--,J=O.narration.continue(w)):u<0&&(C=0,J=ot.stepHistory.back(w,{steps:u*-1})),{newValue:C,result:J}},animate:(u,w,C,J)=>motion.animate(u,w,C,J),animateFilter:(u,w,C,J,fe,me,ge)=>motion.animateFilter(u,w,C,J,fe,me,ge),removeCanvasComponent:u=>{D.canvas.isInitialized&&D.canvas.remove(u);},canvasComponentExists:u=>D.canvas.isInitialized?D.canvas.find(u)!==void 0:false,getVariable:(u,w)=>W.StorageRegistry.getVariable(u,w),setVariable:(u,w,C)=>W.StorageRegistry.setVariable(u,w,C),removeVariable:(u,w)=>W.StorageRegistry.removeVariable(u,w),getFlag:u=>W.storage.flags.get(u),setFlag:(u,w)=>W.storage.flags.set(u,w),onLabelClosing:u=>W.StorageRegistry.clearOldTempVariables(u)}),!d||!T){gt.warn("The canvas element or options are not defined. The canvas will not be initialized.");return}return await D.canvas.init(d,T,at)}A.init=_;function e(){W.storage.clear(),D.canvas.isInitialized&&D.canvas.clear(),_t.sound.clear(),O.narration.clear(),ot.stepHistory.clear();}A.clear=e;async function i(){let d=D.canvas.isInitialized?D.canvas.export():{};return {pixivn_version:Rt,stepData:O.narration.export(),storageData:await W.storage.export(),canvasData:d,soundData:_t.sound.export(),historyData:await ot.stepHistory.export(),path:qt()}}A.exportGameState=i;async function s(d){ot.stepHistory.restore(d.historyData);let T=ot.stepHistory.lastKey;if(typeof T=="number"){let at=ot.stepHistory.stepsInfoMap.get(T)||null;await O.narration.restore(d.stepData,at);}W.storage.restore(d.storageData);try{D.canvas.isInitialized&&await D.canvas.restore(d.canvasData),await _t.sound.restore(d.soundData);}catch{}await GameUnifier.navigate(d.path);}A.restoreGameState=s;async function r(d,T){return A.clear(),await O.narration.call(d,T)}A.start=r;function o(d){return JSON.parse(d)}A.jsonToGameState=o;function n(d){GameUnifier.onEnd=d;}A.onEnd=n;function l(d){return GameUnifier.addOnError(d)}A.addOnError=l;function c(d){return GameUnifier.removeOnError(d)}A.removeOnError=c;function y(d){O.NarrationManagerStatic.onStepStart=d;}A.onStepStart=y;function U(d){O.NarrationManagerStatic.onLoadingLabel=d;}A.onLoadingLabel=U;function S(d){O.NarrationManagerStatic.onStepEnd=d;}A.onStepEnd=S;function M(d){O.NarrationManagerStatic.onLabelStarting=d;}A.onLabelStarting=M;function N(d){O.NarrationManagerStatic.onLabelClosing=d;}A.onLabelClosing=N;function H(d){GameUnifier.navigate=d;}A.onNavigate=H;function f(d){return GameUnifier.addOnPreContinue(d)}A.addOnPreContinue=f;function v(d){return GameUnifier.removeOnPreContinue(d)}A.removeOnPreContinue=v,A.worker={register:d=>GameWorkerManager.register(d),unregister:()=>GameWorkerManager.unregister(),get isAvailable(){return GameWorkerManager.isAvailable}},A.testing=le(A);})(ue||={});var oi={characterUtils:$t,canvasUtils:D,narrationUtils:O,soundUtils:_t,CANVAS_APP_GAME_LAYER_ALIAS:Wt,PIXIVN_VERSION:Rt,...Kt,...ne,canvas:D.canvas,narration:O.narration,sound:_t.sound,storage:W.storage,tickers:tickers$1,history:ot.stepHistory,Game:ue,GameUnifier:GameUnifier};export{Wt as CANVAS_APP_GAME_LAYER_ALIAS,Dt as CachedMap,ue as Game,Rt as PIXIVN_VERSION,Se as SYSTEM_RESERVED_STORAGE_KEYS,oe as createExportableElement,oi as default};
1
+ import {f,b,g as g$1,e,d,h,i}from'./chunk-K7JIC2F2.mjs';import*as D from'@drincs/pixi-vn/canvas';export*from'@drincs/pixi-vn/canvas';import*as $t from'@drincs/pixi-vn/characters';export*from'@drincs/pixi-vn/characters';import {PixiError,GameUnifier}from'@drincs/pixi-vn/core';export*from'@drincs/pixi-vn/core';import*as ot from'@drincs/pixi-vn/history';export*from'@drincs/pixi-vn/history';import*as O from'@drincs/pixi-vn/narration';export*from'@drincs/pixi-vn/narration';import*as _t from'@drincs/pixi-vn/sound';export*from'@drincs/pixi-vn/sound';import*as W from'@drincs/pixi-vn/storage';export*from'@drincs/pixi-vn/storage';import {tickers as tickers$1}from'@drincs/pixi-vn/tickers';export*from'@drincs/pixi-vn/tickers';import {GameWorkerManager}from'@drincs/pixi-vn/worker';export*from'@drincs/pixi-vn/worker';import {motion}from'@drincs/pixi-vn/motion';var ye=typeof performance=="object"&&performance&&typeof performance.now=="function"?performance:Date,Zt=new Set,Ft=typeof process=="object"&&process?process:{},te=(_,e,i,s)=>{typeof Ft.emitWarning=="function"?Ft.emitWarning(_,e,i,s):console.error(`[${i}] ${e}: ${_}`);},jt=globalThis.AbortController,Xt=globalThis.AbortSignal;if(typeof jt>"u"){Xt=class{onabort;_onabort=[];reason;aborted=false;addEventListener(i,s){this._onabort.push(s);}},jt=class{constructor(){e();}signal=new Xt;abort(i){if(!this.signal.aborted){this.signal.reason=i,this.signal.aborted=true;for(let s of this.signal._onabort)s(i);this.signal.onabort?.(i);}}};let _=Ft.env?.LRU_CACHE_IGNORE_AC_WARNING!=="1",e=()=>{_&&(_=false,te("AbortController is not defined. If using lru-cache in node 14, load an AbortController polyfill from the `node-abort-controller` package. A minimal polyfill is provided for use by LRUCache.fetch(), but it should not be relied upon in other contexts (eg, passing it to other APIs that use AbortController/AbortSignal might have undesirable effects). You may disable this with LRU_CACHE_IGNORE_AC_WARNING=1 in the env.","NO_ABORT_CONTROLLER","ENOTSUP",e));};}var be=_=>!Zt.has(_);var dt=_=>_&&_===Math.floor(_)&&_>0&&isFinite(_),ee=_=>dt(_)?_<=Math.pow(2,8)?Uint8Array:_<=Math.pow(2,16)?Uint16Array:_<=Math.pow(2,32)?Uint32Array:_<=Number.MAX_SAFE_INTEGER?It:null:null,It=class extends Array{constructor(_){super(_),this.fill(0);}},lt,St,Se=(lt=class{heap;length;static create(e){let i=ee(e);if(!i)return [];g$1(lt,St,true);let s=new lt(e,i);return g$1(lt,St,false),s}constructor(e$1,i){if(!e(lt,St))throw new TypeError("instantiate Stack using Stack.create(n)");this.heap=new i(e$1),this.length=0;}push(e){this.heap[this.length++]=e;}pop(){return this.heap[--this.length]}},St=new WeakMap,f(lt,St,false),lt),Jt,Qt,X,K,Q,vt,Z,Tt,wt,tt,I,et,R,E,g,k,Y,z,G,it,j,st,rt,q,B,nt,mt,V,xt,a,Mt,yt,ht,Ot,$,se,bt,Et,Lt,pt,ut,zt,Ct,Gt,x,kt,At,ft,Vt,Ut,ie=(Ut=class{constructor(e$1){f(this,a);f(this,X);f(this,K);f(this,Q);f(this,vt);f(this,Z);f(this,Tt);f(this,wt);f(this,tt);d(this,"ttl");d(this,"ttlResolution");d(this,"ttlAutopurge");d(this,"updateAgeOnGet");d(this,"updateAgeOnHas");d(this,"allowStale");d(this,"noDisposeOnSet");d(this,"noUpdateTTL");d(this,"maxEntrySize");d(this,"sizeCalculation");d(this,"noDeleteOnFetchRejection");d(this,"noDeleteOnStaleGet");d(this,"allowStaleOnFetchAbort");d(this,"allowStaleOnFetchRejection");d(this,"ignoreFetchAbort");f(this,I);f(this,et);f(this,R);f(this,E);f(this,g);f(this,k);f(this,Y);f(this,z);f(this,G);f(this,it);f(this,j);f(this,st);f(this,rt);f(this,q);f(this,B);f(this,nt);f(this,mt);f(this,V);f(this,xt);f(this,yt,()=>{});f(this,ht,()=>{});f(this,Ot,()=>{});f(this,$,()=>false);f(this,bt,e=>{});f(this,Et,(e,i,s)=>{});f(this,Lt,(e,i,s,r)=>{if(s||r)throw new TypeError("cannot set size without setting maxSize or maxEntrySize on cache");return 0});d(this,Jt,"LRUCache");let{max:i=0,ttl:s,ttlResolution:r=1,ttlAutopurge:o,updateAgeOnGet:n,updateAgeOnHas:l,allowStale:c,dispose:y,onInsert:U,disposeAfter:S,noDisposeOnSet:M,noUpdateTTL:N,maxSize:H=0,maxEntrySize:f$1=0,sizeCalculation:v,fetchMethod:m,memoMethod:L,noDeleteOnFetchRejection:A,noDeleteOnStaleGet:d$1,allowStaleOnFetchRejection:T,allowStaleOnFetchAbort:at,ignoreFetchAbort:u,perf:w}=e$1;if(w!==void 0&&typeof w?.now!="function")throw new TypeError("perf option must have a now() method if specified");if(g$1(this,tt,w??ye),i!==0&&!dt(i))throw new TypeError("max option must be a nonnegative integer");let C=i?ee(i):Array;if(!C)throw new Error("invalid max value: "+i);if(g$1(this,X,i),g$1(this,K,H),this.maxEntrySize=f$1||e(this,K),this.sizeCalculation=v,this.sizeCalculation){if(!e(this,K)&&!this.maxEntrySize)throw new TypeError("cannot set sizeCalculation without setting maxSize or maxEntrySize");if(typeof this.sizeCalculation!="function")throw new TypeError("sizeCalculation set to non-function")}if(L!==void 0&&typeof L!="function")throw new TypeError("memoMethod must be a function if defined");if(g$1(this,wt,L),m!==void 0&&typeof m!="function")throw new TypeError("fetchMethod must be a function if specified");if(g$1(this,Tt,m),g$1(this,mt,!!m),g$1(this,R,new Map),g$1(this,E,new Array(i).fill(void 0)),g$1(this,g,new Array(i).fill(void 0)),g$1(this,k,new C(i)),g$1(this,Y,new C(i)),g$1(this,z,0),g$1(this,G,0),g$1(this,it,Se.create(i)),g$1(this,I,0),g$1(this,et,0),typeof y=="function"&&g$1(this,Q,y),typeof U=="function"&&g$1(this,vt,U),typeof S=="function"?(g$1(this,Z,S),g$1(this,j,[])):(g$1(this,Z,void 0),g$1(this,j,void 0)),g$1(this,nt,!!e(this,Q)),g$1(this,xt,!!e(this,vt)),g$1(this,V,!!e(this,Z)),this.noDisposeOnSet=!!M,this.noUpdateTTL=!!N,this.noDeleteOnFetchRejection=!!A,this.allowStaleOnFetchRejection=!!T,this.allowStaleOnFetchAbort=!!at,this.ignoreFetchAbort=!!u,this.maxEntrySize!==0){if(e(this,K)!==0&&!dt(e(this,K)))throw new TypeError("maxSize must be a positive integer if specified");if(!dt(this.maxEntrySize))throw new TypeError("maxEntrySize must be a positive integer if specified");h(this,a,se).call(this);}if(this.allowStale=!!c,this.noDeleteOnStaleGet=!!d$1,this.updateAgeOnGet=!!n,this.updateAgeOnHas=!!l,this.ttlResolution=dt(r)||r===0?r:1,this.ttlAutopurge=!!o,this.ttl=s||0,this.ttl){if(!dt(this.ttl))throw new TypeError("ttl must be a positive integer if specified");h(this,a,Mt).call(this);}if(e(this,X)===0&&this.ttl===0&&e(this,K)===0)throw new TypeError("At least one of max, maxSize, or ttl is required");if(!this.ttlAutopurge&&!e(this,X)&&!e(this,K)){let J="LRU_CACHE_UNBOUNDED";be(J)&&(Zt.add(J),te("TTL caching without ttlAutopurge, max, or maxSize can result in unbounded memory consumption.","UnboundedCacheWarning",J,Ut));}}get perf(){return e(this,tt)}static unsafeExposeInternals(e$1){return {starts:e(e$1,rt),ttls:e(e$1,q),autopurgeTimers:e(e$1,B),sizes:e(e$1,st),keyMap:e(e$1,R),keyList:e(e$1,E),valList:e(e$1,g),next:e(e$1,k),prev:e(e$1,Y),get head(){return e(e$1,z)},get tail(){return e(e$1,G)},free:e(e$1,it),isBackgroundFetch:i=>{var s;return h(s=e$1,a,x).call(s,i)},backgroundFetch:(i,s,r,o)=>{var n;return h(n=e$1,a,Gt).call(n,i,s,r,o)},moveToTail:i=>{var s;return h(s=e$1,a,At).call(s,i)},indexes:i=>{var s;return h(s=e$1,a,pt).call(s,i)},rindexes:i=>{var s;return h(s=e$1,a,ut).call(s,i)},isStale:i=>{var s;return e(s=e$1,$).call(s,i)}}}get max(){return e(this,X)}get maxSize(){return e(this,K)}get calculatedSize(){return e(this,et)}get size(){return e(this,I)}get fetchMethod(){return e(this,Tt)}get memoMethod(){return e(this,wt)}get dispose(){return e(this,Q)}get onInsert(){return e(this,vt)}get disposeAfter(){return e(this,Z)}getRemainingTTL(e$1){return e(this,R).has(e$1)?1/0:0}*entries(){for(let e$1 of h(this,a,pt).call(this))e(this,g)[e$1]!==void 0&&e(this,E)[e$1]!==void 0&&!h(this,a,x).call(this,e(this,g)[e$1])&&(yield [e(this,E)[e$1],e(this,g)[e$1]]);}*rentries(){for(let e$1 of h(this,a,ut).call(this))e(this,g)[e$1]!==void 0&&e(this,E)[e$1]!==void 0&&!h(this,a,x).call(this,e(this,g)[e$1])&&(yield [e(this,E)[e$1],e(this,g)[e$1]]);}*keys(){for(let e$1 of h(this,a,pt).call(this)){let i=e(this,E)[e$1];i!==void 0&&!h(this,a,x).call(this,e(this,g)[e$1])&&(yield i);}}*rkeys(){for(let e$1 of h(this,a,ut).call(this)){let i=e(this,E)[e$1];i!==void 0&&!h(this,a,x).call(this,e(this,g)[e$1])&&(yield i);}}*values(){for(let e$1 of h(this,a,pt).call(this))e(this,g)[e$1]!==void 0&&!h(this,a,x).call(this,e(this,g)[e$1])&&(yield e(this,g)[e$1]);}*rvalues(){for(let e$1 of h(this,a,ut).call(this))e(this,g)[e$1]!==void 0&&!h(this,a,x).call(this,e(this,g)[e$1])&&(yield e(this,g)[e$1]);}[(Qt=Symbol.iterator,Jt=Symbol.toStringTag,Qt)](){return this.entries()}find(e$1,i={}){for(let s of h(this,a,pt).call(this)){let r=e(this,g)[s],o=h(this,a,x).call(this,r)?r.__staleWhileFetching:r;if(o!==void 0&&e$1(o,e(this,E)[s],this))return this.get(e(this,E)[s],i)}}forEach(e$1,i=this){for(let s of h(this,a,pt).call(this)){let r=e(this,g)[s],o=h(this,a,x).call(this,r)?r.__staleWhileFetching:r;o!==void 0&&e$1.call(i,o,e(this,E)[s],this);}}rforEach(e$1,i=this){for(let s of h(this,a,ut).call(this)){let r=e(this,g)[s],o=h(this,a,x).call(this,r)?r.__staleWhileFetching:r;o!==void 0&&e$1.call(i,o,e(this,E)[s],this);}}purgeStale(){let e$1=false;for(let i of h(this,a,ut).call(this,{allowStale:true}))e(this,$).call(this,i)&&(h(this,a,ft).call(this,e(this,E)[i],"expire"),e$1=true);return e$1}info(e$1){let i=e(this,R).get(e$1);if(i===void 0)return;let s=e(this,g)[i],r=h(this,a,x).call(this,s)?s.__staleWhileFetching:s;if(r===void 0)return;let o={value:r};if(e(this,q)&&e(this,rt)){let n=e(this,q)[i],l=e(this,rt)[i];if(n&&l){let c=n-(e(this,tt).now()-l);o.ttl=c,o.start=Date.now();}}return e(this,st)&&(o.size=e(this,st)[i]),o}dump(){let e$1=[];for(let i of h(this,a,pt).call(this,{allowStale:true})){let s=e(this,E)[i],r=e(this,g)[i],o=h(this,a,x).call(this,r)?r.__staleWhileFetching:r;if(o===void 0||s===void 0)continue;let n={value:o};if(e(this,q)&&e(this,rt)){n.ttl=e(this,q)[i];let l=e(this,tt).now()-e(this,rt)[i];n.start=Math.floor(Date.now()-l);}e(this,st)&&(n.size=e(this,st)[i]),e$1.unshift([s,n]);}return e$1}load(e$1){this.clear();for(let[i,s]of e$1){if(s.start){let r=Date.now()-s.start;s.start=e(this,tt).now()-r;}this.set(i,s.value,s);}}set(e$1,i$1,s={}){var M,N,H,f;if(i$1===void 0)return this.delete(e$1),this;let{ttl:r=this.ttl,start:o,noDisposeOnSet:n=this.noDisposeOnSet,sizeCalculation:l=this.sizeCalculation,status:c}=s,{noUpdateTTL:y=this.noUpdateTTL}=s,U=e(this,Lt).call(this,e$1,i$1,s.size||0,l);if(this.maxEntrySize&&U>this.maxEntrySize)return c&&(c.set="miss",c.maxEntrySizeExceeded=true),h(this,a,ft).call(this,e$1,"set"),this;let S=e(this,I)===0?void 0:e(this,R).get(e$1);if(S===void 0)S=e(this,I)===0?e(this,G):e(this,it).length!==0?e(this,it).pop():e(this,I)===e(this,X)?h(this,a,Ct).call(this,false):e(this,I),e(this,E)[S]=e$1,e(this,g)[S]=i$1,e(this,R).set(e$1,S),e(this,k)[e(this,G)]=S,e(this,Y)[S]=e(this,G),g$1(this,G,S),i(this,I)._++,e(this,Et).call(this,S,U,c),c&&(c.set="add"),y=false,e(this,xt)&&((M=e(this,vt))==null||M.call(this,i$1,e$1,"add"));else {h(this,a,At).call(this,S);let v=e(this,g)[S];if(i$1!==v){if(e(this,mt)&&h(this,a,x).call(this,v)){v.__abortController.abort(new Error("replaced"));let{__staleWhileFetching:m}=v;m!==void 0&&!n&&(e(this,nt)&&((N=e(this,Q))==null||N.call(this,m,e$1,"set")),e(this,V)&&e(this,j)?.push([m,e$1,"set"]));}else n||(e(this,nt)&&((H=e(this,Q))==null||H.call(this,v,e$1,"set")),e(this,V)&&e(this,j)?.push([v,e$1,"set"]));if(e(this,bt).call(this,S),e(this,Et).call(this,S,U,c),e(this,g)[S]=i$1,c){c.set="replace";let m=v&&h(this,a,x).call(this,v)?v.__staleWhileFetching:v;m!==void 0&&(c.oldValue=m);}}else c&&(c.set="update");e(this,xt)&&this.onInsert?.(i$1,e$1,i$1===v?"update":"replace");}if(r!==0&&!e(this,q)&&h(this,a,Mt).call(this),e(this,q)&&(y||e(this,Ot).call(this,S,r,o),c&&e(this,ht).call(this,c,S)),!n&&e(this,V)&&e(this,j)){let v=e(this,j),m;for(;m=v?.shift();)(f=e(this,Z))==null||f.call(this,...m);}return this}pop(){var e$1;try{for(;e(this,I);){let i=e(this,g)[e(this,z)];if(h(this,a,Ct).call(this,!0),h(this,a,x).call(this,i)){if(i.__staleWhileFetching)return i.__staleWhileFetching}else if(i!==void 0)return i}}finally{if(e(this,V)&&e(this,j)){let i=e(this,j),s;for(;s=i?.shift();)(e$1=e(this,Z))==null||e$1.call(this,...s);}}}has(e$1,i={}){let{updateAgeOnHas:s=this.updateAgeOnHas,status:r}=i,o=e(this,R).get(e$1);if(o!==void 0){let n=e(this,g)[o];if(h(this,a,x).call(this,n)&&n.__staleWhileFetching===void 0)return false;if(e(this,$).call(this,o))r&&(r.has="stale",e(this,ht).call(this,r,o));else return s&&e(this,yt).call(this,o),r&&(r.has="hit",e(this,ht).call(this,r,o)),true}else r&&(r.has="miss");return false}peek(e$1,i={}){let{allowStale:s=this.allowStale}=i,r=e(this,R).get(e$1);if(r===void 0||!s&&e(this,$).call(this,r))return;let o=e(this,g)[r];return h(this,a,x).call(this,o)?o.__staleWhileFetching:o}async fetch(e$1,i={}){let{allowStale:s=this.allowStale,updateAgeOnGet:r=this.updateAgeOnGet,noDeleteOnStaleGet:o=this.noDeleteOnStaleGet,ttl:n=this.ttl,noDisposeOnSet:l=this.noDisposeOnSet,size:c=0,sizeCalculation:y=this.sizeCalculation,noUpdateTTL:U=this.noUpdateTTL,noDeleteOnFetchRejection:S=this.noDeleteOnFetchRejection,allowStaleOnFetchRejection:M=this.allowStaleOnFetchRejection,ignoreFetchAbort:N=this.ignoreFetchAbort,allowStaleOnFetchAbort:H=this.allowStaleOnFetchAbort,context:f,forceRefresh:v=false,status:m,signal:L}=i;if(!e(this,mt))return m&&(m.fetch="get"),this.get(e$1,{allowStale:s,updateAgeOnGet:r,noDeleteOnStaleGet:o,status:m});let A={allowStale:s,updateAgeOnGet:r,noDeleteOnStaleGet:o,ttl:n,noDisposeOnSet:l,size:c,sizeCalculation:y,noUpdateTTL:U,noDeleteOnFetchRejection:S,allowStaleOnFetchRejection:M,allowStaleOnFetchAbort:H,ignoreFetchAbort:N,status:m,signal:L},d=e(this,R).get(e$1);if(d===void 0){m&&(m.fetch="miss");let T=h(this,a,Gt).call(this,e$1,d,A,f);return T.__returned=T}else {let T=e(this,g)[d];if(h(this,a,x).call(this,T)){let C=s&&T.__staleWhileFetching!==void 0;return m&&(m.fetch="inflight",C&&(m.returnedStale=true)),C?T.__staleWhileFetching:T.__returned=T}let at=e(this,$).call(this,d);if(!v&&!at)return m&&(m.fetch="hit"),h(this,a,At).call(this,d),r&&e(this,yt).call(this,d),m&&e(this,ht).call(this,m,d),T;let u=h(this,a,Gt).call(this,e$1,d,A,f),w=u.__staleWhileFetching!==void 0&&s;return m&&(m.fetch=at?"stale":"refresh",w&&at&&(m.returnedStale=true)),w?u.__staleWhileFetching:u.__returned=u}}async forceFetch(e,i={}){let s=await this.fetch(e,i);if(s===void 0)throw new Error("fetch() returned undefined");return s}memo(e$1,i={}){let s=e(this,wt);if(!s)throw new Error("no memoMethod provided to constructor");let{context:r,forceRefresh:o,...n}=i,l=this.get(e$1,n);if(!o&&l!==void 0)return l;let c=s(e$1,l,{options:n,context:r});return this.set(e$1,c,n),c}get(e$1,i={}){let{allowStale:s=this.allowStale,updateAgeOnGet:r=this.updateAgeOnGet,noDeleteOnStaleGet:o=this.noDeleteOnStaleGet,status:n}=i,l=e(this,R).get(e$1);if(l!==void 0){let c=e(this,g)[l],y=h(this,a,x).call(this,c);return n&&e(this,ht).call(this,n,l),e(this,$).call(this,l)?(n&&(n.get="stale"),y?(n&&s&&c.__staleWhileFetching!==void 0&&(n.returnedStale=true),s?c.__staleWhileFetching:void 0):(o||h(this,a,ft).call(this,e$1,"expire"),n&&s&&(n.returnedStale=true),s?c:void 0)):(n&&(n.get="hit"),y?c.__staleWhileFetching:(h(this,a,At).call(this,l),r&&e(this,yt).call(this,l),c))}else n&&(n.get="miss");}delete(e){return h(this,a,ft).call(this,e,"delete")}clear(){return h(this,a,Vt).call(this,"delete")}},X=new WeakMap,K=new WeakMap,Q=new WeakMap,vt=new WeakMap,Z=new WeakMap,Tt=new WeakMap,wt=new WeakMap,tt=new WeakMap,I=new WeakMap,et=new WeakMap,R=new WeakMap,E=new WeakMap,g=new WeakMap,k=new WeakMap,Y=new WeakMap,z=new WeakMap,G=new WeakMap,it=new WeakMap,j=new WeakMap,st=new WeakMap,rt=new WeakMap,q=new WeakMap,B=new WeakMap,nt=new WeakMap,mt=new WeakMap,V=new WeakMap,xt=new WeakMap,a=new WeakSet,Mt=function(){let e$1=new It(e(this,X)),i=new It(e(this,X));g$1(this,q,e$1),g$1(this,rt,i);let s=this.ttlAutopurge?new Array(e(this,X)):void 0;g$1(this,B,s),g$1(this,Ot,(l,c,y=e(this,tt).now())=>{i[l]=c!==0?y:0,e$1[l]=c,r(l,c);}),g$1(this,yt,l=>{i[l]=e$1[l]!==0?e(this,tt).now():0,r(l,e$1[l]);});let r=this.ttlAutopurge?(l,c)=>{if(s?.[l]&&(clearTimeout(s[l]),s[l]=void 0),c&&c!==0&&s){let y=setTimeout(()=>{e(this,$).call(this,l)&&h(this,a,ft).call(this,e(this,E)[l],"expire");},c+1);y.unref&&y.unref(),s[l]=y;}}:()=>{};g$1(this,ht,(l,c)=>{if(e$1[c]){let y=e$1[c],U=i[c];if(!y||!U)return;l.ttl=y,l.start=U,l.now=o||n();let S=l.now-U;l.remainingTTL=y-S;}});let o=0,n=()=>{let l=e(this,tt).now();if(this.ttlResolution>0){o=l;let c=setTimeout(()=>o=0,this.ttlResolution);c.unref&&c.unref();}return l};this.getRemainingTTL=l=>{let c=e(this,R).get(l);if(c===void 0)return 0;let y=e$1[c],U=i[c];if(!y||!U)return 1/0;let S=(o||n())-U;return y-S},g$1(this,$,l=>{let c=i[l],y=e$1[l];return !!y&&!!c&&(o||n())-c>y});},yt=new WeakMap,ht=new WeakMap,Ot=new WeakMap,$=new WeakMap,se=function(){let e$1=new It(e(this,X));g$1(this,et,0),g$1(this,st,e$1),g$1(this,bt,i=>{g$1(this,et,e(this,et)-e$1[i]),e$1[i]=0;}),g$1(this,Lt,(i,s,r,o)=>{if(h(this,a,x).call(this,s))return 0;if(!dt(r))if(o){if(typeof o!="function")throw new TypeError("sizeCalculation must be a function");if(r=o(s,i),!dt(r))throw new TypeError("sizeCalculation return invalid (expect positive integer)")}else throw new TypeError("invalid size value (must be positive integer). When maxSize or maxEntrySize is used, sizeCalculation or size must be set.");return r}),g$1(this,Et,(i,s,r)=>{if(e$1[i]=s,e(this,K)){let o=e(this,K)-e$1[i];for(;e(this,et)>o;)h(this,a,Ct).call(this,true);}g$1(this,et,e(this,et)+e$1[i]),r&&(r.entrySize=s,r.totalCalculatedSize=e(this,et));});},bt=new WeakMap,Et=new WeakMap,Lt=new WeakMap,pt=function*({allowStale:e$1=this.allowStale}={}){if(e(this,I))for(let i=e(this,G);!(!h(this,a,zt).call(this,i)||((e$1||!e(this,$).call(this,i))&&(yield i),i===e(this,z)));)i=e(this,Y)[i];},ut=function*({allowStale:e$1=this.allowStale}={}){if(e(this,I))for(let i=e(this,z);!(!h(this,a,zt).call(this,i)||((e$1||!e(this,$).call(this,i))&&(yield i),i===e(this,G)));)i=e(this,k)[i];},zt=function(e$1){return e$1!==void 0&&e(this,R).get(e(this,E)[e$1])===e$1},Ct=function(e$1){var o;let i$1=e(this,z),s=e(this,E)[i$1],r=e(this,g)[i$1];return e(this,mt)&&h(this,a,x).call(this,r)?r.__abortController.abort(new Error("evicted")):(e(this,nt)||e(this,V))&&(e(this,nt)&&((o=e(this,Q))==null||o.call(this,r,s,"evict")),e(this,V)&&e(this,j)?.push([r,s,"evict"])),e(this,bt).call(this,i$1),e(this,B)?.[i$1]&&(clearTimeout(e(this,B)[i$1]),e(this,B)[i$1]=void 0),e$1&&(e(this,E)[i$1]=void 0,e(this,g)[i$1]=void 0,e(this,it).push(i$1)),e(this,I)===1?(g$1(this,z,g$1(this,G,0)),e(this,it).length=0):g$1(this,z,e(this,k)[i$1]),e(this,R).delete(s),i(this,I)._--,i$1},Gt=function(e$1,i,s,r){let o=i===void 0?void 0:e(this,g)[i];if(h(this,a,x).call(this,o))return o;let n=new jt,{signal:l}=s;l?.addEventListener("abort",()=>n.abort(l.reason),{signal:n.signal});let c={signal:n.signal,options:s,context:r},y=(f,v=false)=>{let{aborted:m}=n.signal,L=s.ignoreFetchAbort&&f!==void 0,A=s.ignoreFetchAbort||!!(s.allowStaleOnFetchAbort&&f!==void 0);if(s.status&&(m&&!v?(s.status.fetchAborted=true,s.status.fetchError=n.signal.reason,L&&(s.status.fetchAbortIgnored=true)):s.status.fetchResolved=true),m&&!L&&!v)return S(n.signal.reason,A);let d=N,T=e(this,g)[i];return (T===N||L&&v&&T===void 0)&&(f===void 0?d.__staleWhileFetching!==void 0?e(this,g)[i]=d.__staleWhileFetching:h(this,a,ft).call(this,e$1,"fetch"):(s.status&&(s.status.fetchUpdated=true),this.set(e$1,f,c.options))),f},U=f=>(s.status&&(s.status.fetchRejected=true,s.status.fetchError=f),S(f,false)),S=(f,v)=>{let{aborted:m}=n.signal,L=m&&s.allowStaleOnFetchAbort,A=L||s.allowStaleOnFetchRejection,d=A||s.noDeleteOnFetchRejection,T=N;if(e(this,g)[i]===N&&(!d||!v&&T.__staleWhileFetching===void 0?h(this,a,ft).call(this,e$1,"fetch"):L||(e(this,g)[i]=T.__staleWhileFetching)),A)return s.status&&T.__staleWhileFetching!==void 0&&(s.status.returnedStale=true),T.__staleWhileFetching;if(T.__returned===T)throw f},M=(f,v)=>{var L;let m=(L=e(this,Tt))==null?void 0:L.call(this,e$1,o,c);m&&m instanceof Promise&&m.then(A=>f(A===void 0?void 0:A),v),n.signal.addEventListener("abort",()=>{(!s.ignoreFetchAbort||s.allowStaleOnFetchAbort)&&(f(void 0),s.allowStaleOnFetchAbort&&(f=A=>y(A,true)));});};s.status&&(s.status.fetchDispatched=true);let N=new Promise(M).then(y,U),H=Object.assign(N,{__abortController:n,__staleWhileFetching:o,__returned:void 0});return i===void 0?(this.set(e$1,H,{...c.options,status:void 0}),i=e(this,R).get(e$1)):e(this,g)[i]=H,H},x=function(e$1){if(!e(this,mt))return false;let i=e$1;return !!i&&i instanceof Promise&&i.hasOwnProperty("__staleWhileFetching")&&i.__abortController instanceof jt},kt=function(e$1,i){e(this,Y)[i]=e$1,e(this,k)[e$1]=i;},At=function(e$1){e$1!==e(this,G)&&(e$1===e(this,z)?g$1(this,z,e(this,k)[e$1]):h(this,a,kt).call(this,e(this,Y)[e$1],e(this,k)[e$1]),h(this,a,kt).call(this,e(this,G),e$1),g$1(this,G,e$1));},ft=function(e$1,i$1){var r,o;let s=false;if(e(this,I)!==0){let n=e(this,R).get(e$1);if(n!==void 0)if(e(this,B)?.[n]&&(clearTimeout(e(this,B)?.[n]),e(this,B)[n]=void 0),s=true,e(this,I)===1)h(this,a,Vt).call(this,i$1);else {e(this,bt).call(this,n);let l=e(this,g)[n];if(h(this,a,x).call(this,l)?l.__abortController.abort(new Error("deleted")):(e(this,nt)||e(this,V))&&(e(this,nt)&&((r=e(this,Q))==null||r.call(this,l,e$1,i$1)),e(this,V)&&e(this,j)?.push([l,e$1,i$1])),e(this,R).delete(e$1),e(this,E)[n]=void 0,e(this,g)[n]=void 0,n===e(this,G))g$1(this,G,e(this,Y)[n]);else if(n===e(this,z))g$1(this,z,e(this,k)[n]);else {let c=e(this,Y)[n];e(this,k)[c]=e(this,k)[n];let y=e(this,k)[n];e(this,Y)[y]=e(this,Y)[n];}i(this,I)._--,e(this,it).push(n);}}if(e(this,V)&&e(this,j)?.length){let n=e(this,j),l;for(;l=n?.shift();)(o=e(this,Z))==null||o.call(this,...l);}return s},Vt=function(e$1){var i,s;for(let r of h(this,a,ut).call(this,{allowStale:true})){let o=e(this,g)[r];if(h(this,a,x).call(this,o))o.__abortController.abort(new Error("deleted"));else {let n=e(this,E)[r];e(this,nt)&&((i=e(this,Q))==null||i.call(this,o,n,e$1)),e(this,V)&&e(this,j)?.push([o,n,e$1]);}}if(e(this,R).clear(),e(this,g).fill(void 0),e(this,E).fill(void 0),e(this,q)&&e(this,rt)){e(this,q).fill(0),e(this,rt).fill(0);for(let r of e(this,B)??[])r!==void 0&&clearTimeout(r);e(this,B)?.fill(void 0);}if(e(this,st)&&e(this,st).fill(0),g$1(this,z,0),g$1(this,G,0),e(this,it).length=0,g$1(this,et,0),g$1(this,I,0),e(this,V)&&e(this,j)){let r=e(this,j),o;for(;o=r?.shift();)(s=e(this,Z))==null||s.call(this,...o);}},Ut);var Dt=class{cache;map=new Map;constructor(e){this.cache=new ie({max:e.cacheSize}),this.map=new Map;}get[Symbol.iterator](){return this.map[Symbol.iterator]}get[Symbol.toStringTag](){return this.map[Symbol.toStringTag]}clear(){this.cache.clear(),this.map.clear();}delete(e){let i=this.map.delete(e);return i&&this.cache.delete(e),i}get forEach(){return this.map.forEach}get(e){let i=this.cache.get(e);return i||this.map.get(e)}has(e){return this.map.has(e)}set(e,i){return this.map.set(e,i),this.cache.set(e,i),this}get size(){return this.map.size}entries(){return this.map.entries()}keys(){return this.map.keys()}values(){return this.map.values()}};var Rt="1.9.5";var Ht={version:Rt};var Wt="__game_layer__";var Te={CURRENT_DIALOGUE_MEMORY_KEY:"dialogue",LAST_DIALOGUE_ADDED_IN_STEP_MEMORY_KEY:"dialogue:step_counter",CURRENT_MENU_OPTIONS_MEMORY_KEY:"choice:options",LAST_MENU_OPTIONS_ADDED_IN_STEP_MEMORY_KEY:"choice:step_counter",CURRENT_INPUT_VALUE_MEMORY_KEY:"input:value",LAST_INPUT_ADDED_IN_STEP_MEMORY_KEY:"input:step_counter",CURRENT_INPUT_INFO_MEMORY_KEY:"input:info",CHARACTER_CATEGORY_KEY:"character",ADD_NEXT_DIALOG_TEXT_INTO_THE_CURRENT_DIALOG_FLAG_KEY:"___glue___",OPENED_LABELS_COUNTER_KEY:"label:opened",ALL_CHOICES_MADE_KEY:"choices:made",CURRENT_STEP_TIMES_COUNTER_KEY:"label:history",LAST_STEP_GLUED:"glue:last_step"};var ne={};var Kt={};b(Kt,{createExportableElement:()=>oe});var gt;(r=>(r.log=(o,...n)=>console.log(`[Pixi\u2019VN] ${o}`,...n),r.warn=(o,...n)=>console.warn(`[Pixi\u2019VN] ${o}`,...n),r.error=(o,...n)=>console.error(`[Pixi\u2019VN] ${o}`,...n),r.info=(o,...n)=>console.info(`[Pixi\u2019VN] ${o}`,...n)))(gt||={});function oe(_){try{if(typeof _>"u")return _;let e=JSON.stringify(_);return JSON.parse(e)}catch(e){throw gt.error("Error creating exportable element",_,e),new PixiError("not_json_serializable","Error creating exportable element")}}function le(_){let e,i={},s={};function r(y){i=y;}function o(y){s=y;}function n(y){e&&l();let U=y?.windowKey??"pixiVN",S=[],M=f=>({...i,...f}),N={Game:_,narration:O.narration,storage:W.storage,stepHistory:ot.stepHistory,get props(){return i},start:(f,v)=>s.start?s.start(f,v):_.start(f,M(v)),continue:(f,v)=>s.continue?s.continue():O.narration.continue(M(f),v),call:(f,v)=>s.call?s.call(f,v):O.narration.call(f,M(v)),jump:(f,v)=>s.jump?s.jump(f,v):O.narration.jump(f,M(v)),selectChoice:(f,v)=>{let m=O.narration.choices.list?.find(L=>L.choiceIndex===f);if(!m){let L=O.narration.choices.list?.map(A=>A.choiceIndex).join(", ")??"none (no choice menu is open)";throw new Error(`Game.testing: no open choice with index ${f}. Available: ${L}`)}return s.selectChoice?s.selectChoice(m):O.narration.choices.select(m,M(v))},setInput:f=>{O.narration.input.value=f;},goBack:(f,v)=>s.back?s.back():ot.stepHistory.back(M(f),v),closeCurrentLabel:()=>O.narration.labels.closeCurrent(),closeAllLabels:()=>O.narration.labels.closeAll(),getState:()=>({dialogue:O.narration.dialogue,dialogueGlue:O.narration.dialogGlue,choices:O.narration.choices.list,input:{isRequired:O.narration.input.isRequired,type:O.narration.input.type,value:O.narration.input.value},canContinue:O.narration.canContinue,canGoBack:ot.stepHistory.canGoBack,labelsOpened:O.narration.labels.opened,currentLabelId:O.narration.labels.current?.id,stepCounter:O.narration.stepCounter}),get errors(){return S.slice()},clearErrors:()=>{S.length=0;}},H=f=>{S.push({error:f,timestamp:Date.now()});};return _.addOnError(H),typeof window<"u"?window[U]=N:gt.warn('Game.testing.enable(): "window" is not defined, so the API was not attached globally (it was still returned).'),e={api:N,windowKey:U,errorHandler:H},N}function l(){e&&(_.removeOnError(e.errorHandler),typeof window<"u"&&window[e.windowKey]===e.api&&delete window[e.windowKey],e=void 0);}function c(){return e!==void 0}return {setProps:r,setActions:o,enable:n,disable:l,isEnabled:c}}var xe=typeof window<"u"&&typeof document<"u",he=[" _______ _ _ _ ____ ____ ____ _____ ","|_ __ \\ (_) (_) | | |_ _| |_ _||_ \\|_ _|"," | |__) |__ _ __ __ \\_| \\ \\ / / | \\ | | "," | ___/[ | [ \\ [ ][ | \\ \\ / / | |\\ \\| | "," _| |_ | | > ' < | | \\ ' / _| |_\\ |_ ",`|_____| [___][__]\`\\_][___] \\_/ |_____|\\____| v${Ht.version}`],ce=31,Ee="background:#2f90da;color:#fff;font-weight:bold;",Ue="background:#c832bb;color:#fff;font-weight:bold;",Ae="background:transparent;font-weight:bold;",Yt=` v${Ht.version}`;function de(){if(!xe)return;let _=[],e=[];for(let i=0;i<he.length;i++){let s=he[i],r=s.endsWith(Yt),o=r?s.slice(0,-Yt.length):s,n=o.slice(0,ce),l=o.slice(ce),c=r?"%c%s%c%s%c%s":"%c%s%c%s";_.push(c),e.push(Ee,n,Ue,l),r&&e.push(Ae,Yt);}console.info(_.join(`
2
+ `),...e);}function qt(){let _=window.location.pathname+window.location.hash;return _.includes("#")&&(_=_.split("#")[1]),_}de();var ue;(A=>{async function _(d,T,at){if(GameUnifier.init({navigate:T?.navigate,getCurrentGameStepState:async()=>{let u=D.canvas.isInitialized?D.canvas.export():{};return {path:qt(),storage:await W.storage.export(),canvas:u,sound:_t.sound.export(),labelIndex:O.NarrationManagerStatic.currentLabelStepIndex||0,openedLabels:O.narration.openedLabels}},restoreGameStepState:async(u,w)=>{ot.HistoryManagerStatic._originalStepData=u,O.NarrationManagerStatic.openedLabels=u.openedLabels,W.storage.restore(u.storage);try{D.canvas.isInitialized&&await D.canvas.restore(u.canvas),await _t.sound.restore(u.sound);}catch(C){gt.error("Error restoring game step state:",C);}await w(u.path);},getStepCounter:()=>O.narration.stepCounter,setStepCounter:u=>{O.NarrationManagerStatic._stepCounter=u;},getOpenedLabels:()=>O.narration.openedLabels.length,addHistoryItem:(u,w)=>ot.stepHistory.add(u,w),getCharacter:u=>$t.RegisteredCharacters.get(u),processNavigationRequests:(u,w)=>{let C=u,J=Promise.resolve();return u>0?(C--,J=O.narration.continue(w)):u<0&&(C=0,J=ot.stepHistory.back(w,{steps:u*-1})),{newValue:C,result:J}},animate:(u,w,C,J)=>motion.animate(u,w,C,J),animateFilter:(u,w,C,J,fe,me,ge,_e)=>motion.animateFilter(u,w,C,J,fe,me,ge,_e),removeCanvasComponent:u=>{D.canvas.isInitialized&&D.canvas.remove(u);},canvasComponentExists:u=>D.canvas.isInitialized?D.canvas.find(u)!==void 0:false,getVariable:(u,w)=>W.StorageRegistry.getVariable(u,w),setVariable:(u,w,C)=>W.StorageRegistry.setVariable(u,w,C),removeVariable:(u,w)=>W.StorageRegistry.removeVariable(u,w),getFlag:u=>W.storage.flags.get(u),setFlag:(u,w)=>W.storage.flags.set(u,w),onLabelClosing:u=>W.StorageRegistry.clearOldTempVariables(u)}),!d||!T){gt.warn("The canvas element or options are not defined. The canvas will not be initialized.");return}return await D.canvas.init(d,T,at)}A.init=_;function e(){W.storage.clear(),D.canvas.isInitialized&&D.canvas.clear(),_t.sound.clear(),O.narration.clear(),ot.stepHistory.clear();}A.clear=e;async function i(){let d=D.canvas.isInitialized?D.canvas.export():{};return {pixivn_version:Rt,stepData:O.narration.export(),storageData:await W.storage.export(),canvasData:d,soundData:_t.sound.export(),historyData:await ot.stepHistory.export(),path:qt()}}A.exportGameState=i;async function s(d){ot.stepHistory.restore(d.historyData);let T=ot.stepHistory.lastKey;if(typeof T=="number"){let at=ot.stepHistory.stepsInfoMap.get(T)||null;await O.narration.restore(d.stepData,at);}W.storage.restore(d.storageData);try{D.canvas.isInitialized&&await D.canvas.restore(d.canvasData),await _t.sound.restore(d.soundData);}catch{}await GameUnifier.navigate(d.path);}A.restoreGameState=s;async function r(d,T){return A.clear(),await O.narration.call(d,T)}A.start=r;function o(d){return JSON.parse(d)}A.jsonToGameState=o;function n(d){GameUnifier.onEnd=d;}A.onEnd=n;function l(d){return GameUnifier.addOnError(d)}A.addOnError=l;function c(d){return GameUnifier.removeOnError(d)}A.removeOnError=c;function y(d){O.NarrationManagerStatic.onStepStart=d;}A.onStepStart=y;function U(d){O.NarrationManagerStatic.onLoadingLabel=d;}A.onLoadingLabel=U;function S(d){O.NarrationManagerStatic.onStepEnd=d;}A.onStepEnd=S;function M(d){O.NarrationManagerStatic.onLabelStarting=d;}A.onLabelStarting=M;function N(d){O.NarrationManagerStatic.onLabelClosing=d;}A.onLabelClosing=N;function H(d){GameUnifier.navigate=d;}A.onNavigate=H;function f(d){return GameUnifier.addOnPreContinue(d)}A.addOnPreContinue=f;function v(d){return GameUnifier.removeOnPreContinue(d)}A.removeOnPreContinue=v,A.worker={register:d=>GameWorkerManager.register(d),unregister:()=>GameWorkerManager.unregister(),get isAvailable(){return GameWorkerManager.isAvailable}},A.testing=le(A);})(ue||={});var ai={characterUtils:$t,canvasUtils:D,narrationUtils:O,soundUtils:_t,CANVAS_APP_GAME_LAYER_ALIAS:Wt,PIXIVN_VERSION:Rt,...Kt,...ne,canvas:D.canvas,narration:O.narration,sound:_t.sound,storage:W.storage,tickers:tickers$1,history:ot.stepHistory,Game:ue,GameUnifier:GameUnifier};export{Wt as CANVAS_APP_GAME_LAYER_ALIAS,Dt as CachedMap,ue as Game,Rt as PIXIVN_VERSION,Te as SYSTEM_RESERVED_STORAGE_KEYS,oe as createExportableElement,ai as default};
package/dist/motion.cjs CHANGED
@@ -1 +1 @@
1
- 'use strict';var tickers=require('@drincs/pixi-vn/tickers'),U=require('@drincs/pixi-vn/pixi.js'),motion=require('motion'),canvas=require('@drincs/pixi-vn/canvas'),core=require('@drincs/pixi-vn/core');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var U__default=/*#__PURE__*/_interopDefault(U);var it=Object.create;var X=Object.defineProperty;var nt=Object.getOwnPropertyDescriptor;var rt=Object.getOwnPropertyNames;var st=Object.getPrototypeOf,at=Object.prototype.hasOwnProperty;var M=(o=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(o,{get:(t,r)=>(typeof require<"u"?require:t)[r]}):o)(function(o){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+o+'" is not supported')});var $=(o,t)=>()=>(t||o((t={exports:{}}).exports,t),t.exports);var ot=(o,t,r,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let e of rt(t))!at.call(o,e)&&e!==r&&X(o,e,{get:()=>t[e],enumerable:!(i=nt(t,e))||i.enumerable});return o};var N=(o,t,r)=>(r=o!=null?it(st(o)):{},ot(X(r,"default",{value:o,enumerable:true}),o));var L=$((F,K)=>{(function(o,t){typeof F=="object"?K.exports=F=t():typeof define=="function"&&define.amd?define([],t):o.CryptoJS=t();})(F,function(){var o=o||(function(t,r){var i;if(typeof window<"u"&&window.crypto&&(i=window.crypto),typeof self<"u"&&self.crypto&&(i=self.crypto),typeof globalThis<"u"&&globalThis.crypto&&(i=globalThis.crypto),!i&&typeof window<"u"&&window.msCrypto&&(i=window.msCrypto),!i&&typeof global<"u"&&global.crypto&&(i=global.crypto),!i&&typeof M=="function")try{i=M("crypto");}catch{}var e=function(){if(i){if(typeof i.getRandomValues=="function")try{return i.getRandomValues(new Uint32Array(1))[0]}catch{}if(typeof i.randomBytes=="function")try{return i.randomBytes(4).readInt32LE()}catch{}}throw new Error("Native crypto module could not be used to get secure random number.")},a=Object.create||(function(){function n(){}return function(s){var d;return n.prototype=s,d=new n,n.prototype=null,d}})(),c={},l=c.lib={},h=l.Base=(function(){return {extend:function(n){var s=a(this);return n&&s.mixIn(n),(!s.hasOwnProperty("init")||this.init===s.init)&&(s.init=function(){s.$super.init.apply(this,arguments);}),s.init.prototype=s,s.$super=this,s},create:function(){var n=this.extend();return n.init.apply(n,arguments),n},init:function(){},mixIn:function(n){for(var s in n)n.hasOwnProperty(s)&&(this[s]=n[s]);n.hasOwnProperty("toString")&&(this.toString=n.toString);},clone:function(){return this.init.prototype.extend(this)}}})(),u=l.WordArray=h.extend({init:function(n,s){n=this.words=n||[],s!=r?this.sigBytes=s:this.sigBytes=n.length*4;},toString:function(n){return (n||m).stringify(this)},concat:function(n){var s=this.words,d=n.words,f=this.sigBytes,v=n.sigBytes;if(this.clamp(),f%4)for(var T=0;T<v;T++){var I=d[T>>>2]>>>24-T%4*8&255;s[f+T>>>2]|=I<<24-(f+T)%4*8;}else for(var k=0;k<v;k+=4)s[f+k>>>2]=d[k>>>2];return this.sigBytes+=v,this},clamp:function(){var n=this.words,s=this.sigBytes;n[s>>>2]&=4294967295<<32-s%4*8,n.length=t.ceil(s/4);},clone:function(){var n=h.clone.call(this);return n.words=this.words.slice(0),n},random:function(n){for(var s=[],d=0;d<n;d+=4)s.push(e());return new u.init(s,n)}}),p=c.enc={},m=p.Hex={stringify:function(n){for(var s=n.words,d=n.sigBytes,f=[],v=0;v<d;v++){var T=s[v>>>2]>>>24-v%4*8&255;f.push((T>>>4).toString(16)),f.push((T&15).toString(16));}return f.join("")},parse:function(n){for(var s=n.length,d=[],f=0;f<s;f+=2)d[f>>>3]|=parseInt(n.substr(f,2),16)<<24-f%8*4;return new u.init(d,s/2)}},b=p.Latin1={stringify:function(n){for(var s=n.words,d=n.sigBytes,f=[],v=0;v<d;v++){var T=s[v>>>2]>>>24-v%4*8&255;f.push(String.fromCharCode(T));}return f.join("")},parse:function(n){for(var s=n.length,d=[],f=0;f<s;f++)d[f>>>2]|=(n.charCodeAt(f)&255)<<24-f%4*8;return new u.init(d,s)}},A=p.Utf8={stringify:function(n){try{return decodeURIComponent(escape(b.stringify(n)))}catch{throw new Error("Malformed UTF-8 data")}},parse:function(n){return b.parse(unescape(encodeURIComponent(n)))}},_=l.BufferedBlockAlgorithm=h.extend({reset:function(){this._data=new u.init,this._nDataBytes=0;},_append:function(n){typeof n=="string"&&(n=A.parse(n)),this._data.concat(n),this._nDataBytes+=n.sigBytes;},_process:function(n){var s,d=this._data,f=d.words,v=d.sigBytes,T=this.blockSize,I=T*4,k=v/I;n?k=t.ceil(k):k=t.max((k|0)-this._minBufferSize,0);var x=k*T,S=t.min(x*4,v);if(x){for(var D=0;D<x;D+=T)this._doProcessBlock(f,D);s=f.splice(0,x),d.sigBytes-=S;}return new u.init(s,S)},clone:function(){var n=h.clone.call(this);return n._data=this._data.clone(),n},_minBufferSize:0});l.Hasher=_.extend({cfg:h.extend(),init:function(n){this.cfg=this.cfg.extend(n),this.reset();},reset:function(){_.reset.call(this),this._doReset();},update:function(n){return this._append(n),this._process(),this},finalize:function(n){n&&this._append(n);var s=this._doFinalize();return s},blockSize:512/32,_createHelper:function(n){return function(s,d){return new n.init(d).finalize(s)}},_createHmacHelper:function(n){return function(s,d){return new y.HMAC.init(n,d).finalize(s)}}});var y=c.algo={};return c})(Math);return o});});var Y=$((q,V)=>{(function(o,t){typeof q=="object"?V.exports=q=t(L()):typeof define=="function"&&define.amd?define(["./core"],t):t(o.CryptoJS);})(q,function(o){return (function(){var t=o,r=t.lib,i=r.WordArray,e=r.Hasher,a=t.algo,c=[],l=a.SHA1=e.extend({_doReset:function(){this._hash=new i.init([1732584193,4023233417,2562383102,271733878,3285377520]);},_doProcessBlock:function(h,u){for(var p=this._hash.words,m=p[0],b=p[1],A=p[2],_=p[3],g=p[4],y=0;y<80;y++){if(y<16)c[y]=h[u+y]|0;else {var n=c[y-3]^c[y-8]^c[y-14]^c[y-16];c[y]=n<<1|n>>>31;}var s=(m<<5|m>>>27)+g+c[y];y<20?s+=(b&A|~b&_)+1518500249:y<40?s+=(b^A^_)+1859775393:y<60?s+=(b&A|b&_|A&_)-1894007588:s+=(b^A^_)-899497514,g=_,_=A,A=b<<30|b>>>2,b=m,m=s;}p[0]=p[0]+m|0,p[1]=p[1]+b|0,p[2]=p[2]+A|0,p[3]=p[3]+_|0,p[4]=p[4]+g|0;},_doFinalize:function(){var h=this._data,u=h.words,p=this._nDataBytes*8,m=h.sigBytes*8;return u[m>>>5]|=128<<24-m%32,u[(m+64>>>9<<4)+14]=Math.floor(p/4294967296),u[(m+64>>>9<<4)+15]=p,h.sigBytes=u.length*4,this._process(),this._hash},clone:function(){var h=e.clone.call(this);return h._hash=this._hash.clone(),h}});t.SHA1=e._createHelper(l),t.HmacSHA1=e._createHmacHelper(l);})(),o.SHA1});});var E=o=>t=>{let r=({lastTime:i})=>t(i);return {start:(i=true)=>{o.add(r),o.start();},stop:()=>o.remove(r),now:()=>o.lastTime}};function O(o,t,r){if(Array.isArray(o)&&Array.isArray(o[0])){t&&"repeat"in t&&t?.repeat===null&&(t.repeat=1/0),o.forEach(c=>{if(Array.isArray(c)&&c.length===3){let[l,h,u]=c;u&&"repeat"in u&&u?.repeat===null&&(u.repeat=1/0);}});let{ticker:i=new U__default.default.Ticker,driver:e=E(i),...a}=t||{};return motion.animate(o,{driver:e,...a})}else {r&&"repeat"in r&&r?.repeat===null&&(r.repeat=1/0);let{ticker:i=new U__default.default.Ticker,driver:e=E(i),...a}=r||{};return motion.animate(o,t,{driver:e,...a})}}function ct(o,t){let{ticker:r=new U__default.default.Ticker,driver:i=E(r),repeat:e,...a}=t||{},c={x:0},l=[],h=[],u=0;o.forEach((A,_)=>{let{onComplete:g,onPlay:y,delay:n=0,duration:s=.3,...d}=A,f=typeof n=="function"?n(0,1):n,v=u+f,T=v+s;l.push({start:v,end:T,onPlay:y,onComplete:g}),h.push([c,{x:_+1},{...d,delay:n,duration:s}]),u=T;});let p=u,m=O(h,{...a,repeat:e,driver:i});if(l.length>0&&p>0){let I=function(){if(s)return;for(n+=r.deltaMS/1e3;!s&&n>=p;){if(f(),y++,y>=_){T();return}n-=p;}let x=v(n);x===-1?g>=0&&f():x!==g&&d(x);};let A=e===null?1/0:e,_=A===void 0?1:A+1,g=-1,y=0,n=0,s=false,d=x=>{g>=0&&l[g].onComplete?.(),g=x,l[g].onPlay?.();},f=()=>{g>=0&&l[g].onComplete?.(),g=-1;},v=x=>{for(let S=0;S<l.length;S++){if(x<l[S].start)return -1;if(x<l[S].end)return S}return l.length-1},T=()=>{s=true,r.remove(I);};r.add(I);let k=m.stop.bind(m);m.stop=()=>{T(),k();};}return m}var Z=N(Y());var j=class o{constructor(t,r){let{filter:i,apply:e,duration:a,priority:c,id:l=this.generateTickerId(t),canvasElementAliases:h=[],cleanup:u}=r||{},p=i?void 0:o.resolveFilterRef(t.filterRef),m=i??p;if(!m&&!e)throw new core.PixiError("not_implemented","MotionFilterTicker requires either a `filter` instance, an `apply` callback, or a resolvable `filterRef`; it cannot be reconstructed from saved/serialized ticker args.");this._args=t,this.filter=m,this.apply=e,this.duration=a,this.priority=c,this.id=l,this.canvasElementAliases=h;let b=p&&t.filterRef?.detach?t.filterRef.alias:void 0;this.cleanup=u??(b&&p?()=>o.detachFilter(b,p):void 0);}id;filter;apply;cleanup;_args;static resolveFilterRef(t){if(t)return o.componentFilters(t.alias)[t.index]}static componentFilters(t){let r=canvas.canvas.find(t)?.filters;return r?Array.isArray(r)?[...r]:[r]:[]}static detachFilter(t,r){let i=canvas.canvas.find(t);if(i){let e=o.componentFilters(t).filter(a=>a!==r);i.filters=e.length>0?e:null;}r.destroy();}get args(){let t=this._args.filterRef;if(t&&this.filter){let r=o.componentFilters(t.alias).indexOf(this.filter);r!==-1&&(t={...t,index:r});}return {...this._args,filterRef:t,time:this._animation?.time}}duration;priority;ticker=new U__default.default.Ticker;_animation;stopped=false;_paused=false;suppressWritesDuring(t){let r=this._paused;this._paused=true;try{return t()}finally{this._paused=r;}}canvasElementAliases=[];generateTickerId(...t){try{return (0,Z.default)(JSON.stringify(t)).toString()+"_motion_filter_"+Math.random().toString(36).substring(7)}catch(r){throw new core.PixiError("not_json_serializable",`Error to generate ticker id: ${r}`)}}timeout=50;async complete(){this.animation.complete(),await new Promise(t=>setTimeout(t,this.timeout));}stop(){this.stopped=true,this.animation.stop();}start(){if(this.args.options?.autoplay===false)return;this._paused=false;let t=this.animation;typeof this._args.time=="number"?(this._paused=true,t.play(),this.ticker.addOnce(()=>{this._paused=false;})):t.play();}onComplete=()=>{let t=this.cleanup;t&&this.ticker.addOnce(()=>t());let r=this.id,i=this._args.options?.aliasToRemoveAfter||[];typeof i=="string"&&(i=[i]);let e=this._args.options?.tickerAliasToResume||[];typeof e=="string"&&(e=[e]);let a=this._args.options?.tickerIdToResume||[];typeof a=="string"&&(a=[a]),tickers.tickers.onComplete(r,{aliasToRemoveAfter:i,tickerAliasToResume:e,tickerIdToResume:a,stopTicker:false});};createItem(){let t=this.filter;return new Proxy(t,{set:(r,i,e)=>(this.stopped||this._paused||this._args.startState&&this._args.startState[i]===e||(r[i]=e),true),get:(r,i)=>{if(this._args.startState||(this._args.startState={}),i in this._args.startState)return this._args.startState[i];let e=r[i];return this._args.startState={...this._args.startState,[i]:e},e}})}createUpdateHandler(t){return ()=>{this.stopped||this._paused||this.apply?.(t.value);}}pause(){this.animation&&(this._paused=true,this.animation.pause());}play(){this._paused=false,this.animation.play();}get paused(){return this.animation?this.animation.state==="paused":true}};var P=class extends j{get animation(){let t=this._animation;if(t)return t;let r=typeof this._args.time=="number",i=()=>{if(this.filter){let a=this.createItem();return O(a,this._args.keyframes,{...this._args.options,onComplete:()=>this.onComplete(),ticker:this.ticker})}let e={value:0};return O(e,this._args.keyframes,{...this._args.options,onUpdate:this.createUpdateHandler(e),onComplete:()=>this.onComplete(),ticker:this.ticker})};return t=r?this.suppressWritesDuring(i):i(),r&&(t.time=this._args.time),this._animation=t,t}alias="motion-filter"};var tt=N(Y());var w=class{constructor(t,r){let{duration:i,priority:e,id:a=this.generateTickerId(r),canvasElementAliases:c=[]}=r||{};this._args=t,this.duration=i,this.priority=e,this.id=a,this.canvasElementAliases=c;}id;_args;get args(){return {...this._args,time:this._animation?.time}}duration;priority;ticker=new U__default.default.Ticker;_animation;stopped=false;_paused=false;suppressWritesDuring(t){let r=this._paused;this._paused=true;try{return t()}finally{this._paused=r;}}canvasElementAliases=[];getItemByAlias(t){if(!this.canvasElementAliases.includes(t))return;let r=canvas.canvas.find(t);if(r)return r}generateTickerId(...t){try{return (0,tt.default)(JSON.stringify(t)).toString()+"_motion_"+Math.random().toString(36).substring(7)}catch(r){throw new core.PixiError("not_json_serializable",`Error to generate ticker id: ${r}`)}}timeout=50;async complete(){this.animation.complete(),await new Promise(t=>setTimeout(t,this.timeout));}stop(){this.stopped=true,this.animation.stop();}start(){if(this.args.options?.autoplay===false)return;this._paused=false;let t=this.animation;typeof this._args.time=="number"?(this._paused=true,t.play(),this.ticker.addOnce(()=>{this._paused=false;})):t.play();}onComplete=()=>{let t=this.id,r=this._args.options?.aliasToRemoveAfter||[];typeof r=="string"&&(r=[r]);let i=this._args.options?.tickerAliasToResume||[];typeof i=="string"&&(i=[i]);let e=this._args.options?.tickerIdToResume||[];typeof e=="string"&&(e=[e]),tickers.tickers.onComplete(t,{aliasToRemoveAfter:r,tickerAliasToResume:i,tickerIdToResume:e,stopTicker:false});};createItem(t){return new Proxy({alias:t},{set:({alias:r},i,e)=>{if(this.stopped||this._paused||this._args.startState&&this._args.startState[i]===e)return true;let a=this.getItemByAlias(r);if(!a)return true;switch(i){case "pivotX":a.pivot.x=e;break;case "pivotY":a.pivot.y=e;break;case "scaleX":a.scale.x=e;break;case "scaleY":a.scale.y=e;break;default:a[i]=e;break}return true},get:({alias:r},i)=>{if(this._args.startState||(this._args.startState={}),i in this._args.startState)return this._args.startState[i];let e=this.getItemByAlias(r);if(!e)return;let a;switch(i){case "pivotX":a=e.pivot.x;break;case "pivotY":a=e.pivot.y;break;case "scaleX":a=e.scale.x;break;case "scaleY":a=e.scale.y;break;default:a=e[i];break}return this._args.startState={...this._args.startState,[i]:a},a},has:({alias:r},i)=>{let e=this.getItemByAlias(r);if(!e)return false;switch(i){case "pivotX":return "pivot"in e&&"x"in e.pivot;case "pivotY":return "pivot"in e&&"y"in e.pivot;case "scaleX":return "scale"in e&&"x"in e.scale;case "scaleY":return "scale"in e&&"y"in e.scale;default:return i in e}},ownKeys:({alias:r})=>{let i=this.getItemByAlias(r);return i?Object.keys(i):[]}})}pause(){this.animation&&(this._paused=true,this.animation.pause());}play(){this._paused=false,this.animation.play();}get paused(){return this.animation?this.animation.state==="paused":true}};var R=class extends w{get animation(){let t=this._animation;if(t)return t;let r=this.canvasElementAliases[0],i=this.createItem(r),e=this._args.sequence.map((c,l)=>[i,c[0],{...c[1]||{},ticker:this.ticker,onComplete:l===this._args.sequence.length-1?()=>this.onComplete():void 0}]),a=typeof this._args.time=="number";return t=a?this.suppressWritesDuring(()=>O(e,this._args.options)):O(e,this._args.options),a&&(t.time=this._args.time),this._animation=t,t}alias="motion-sequence"};var B=class extends w{get animation(){let t=this._animation;if(t)return t;let r=this.canvasElementAliases.map(a=>this.createItem(a)),i=typeof this._args.time=="number",e=()=>O(r,this._args.keyframes,{...this._args.options,onComplete:()=>this.onComplete(),ticker:this.ticker});return t=i?this.suppressWritesDuring(e):e(),i&&(t.time=this._args.time),this._animation=t,t}alias="motion"};var C;(e=>(e.log=(a,...c)=>console.log(`[Pixi\u2019VN] ${a}`,...c),e.warn=(a,...c)=>console.warn(`[Pixi\u2019VN] ${a}`,...c),e.error=(a,...c)=>console.error(`[Pixi\u2019VN] ${a}`,...c),e.info=(a,...c)=>console.info(`[Pixi\u2019VN] ${a}`,...c)))(C||={});function W(o){try{if(typeof o>"u")return o;let t=JSON.stringify(o);return JSON.parse(t)}catch(t){throw C.error("Error creating exportable element",o,t),new core.PixiError("not_json_serializable","Error creating exportable element")}}var et;(r=>{function o(i,e,a,c){try{e=W(e);}catch(m){throw C.error("animate keyframes cannot contain functions or classes"),m}try{a=W(a);}catch(m){throw C.error("animate options cannot contain functions or classes"),m}let l=[];typeof i=="string"?l=[i]:Array.isArray(i)?l=i.map(m=>typeof m=="string"?m:m.label):l=[i.label];let h;Array.isArray(e)?h=new R({sequence:e,options:a},{priority:c,canvasElementAliases:l}):h=new B({keyframes:e,options:a},{priority:c,canvasElementAliases:l});let u=tickers.tickers.add(l,h),{completeOnContinue:p}=a||{};return u&&p&&tickers.tickers.completeOnStepEnd({id:u}),u}r.animate=o;function t(i,e,a,c,l,h,u){try{a=W(a);}catch(g){throw C.error("animateFilter keyframes cannot contain functions or classes"),g}try{c=W(c);}catch(g){throw C.error("animateFilter options cannot contain functions or classes"),g}let p=Array.isArray(i)?i:[i],m;if(e){let g=p[0],y=g?canvas.canvas.find(g):void 0,s=(y?.filters?Array.isArray(y.filters)?y.filters:[y.filters]:[]).indexOf(e);s!==-1&&(m={alias:g,index:s,detach:u?true:void 0});}let b=new P({keyframes:a,options:c,filterRef:m},{filter:e,apply:h,priority:l,canvasElementAliases:p,cleanup:u}),A=tickers.tickers.add(p,b),{completeOnContinue:_}=c||{};return A&&_&&tickers.tickers.completeOnStepEnd({id:A}),A}r.animateFilter=t;})(et||={});var gt=et;tickers.RegisteredTickers.add(B,"motion");tickers.RegisteredTickers.add(R,"motion-sequence");tickers.RegisteredTickers.add(P,"motion-filter");exports.animate=O;exports.motion=gt;exports.motionDriver=E;exports.timeline=ct;
1
+ 'use strict';var tickers=require('@drincs/pixi-vn/tickers'),U=require('@drincs/pixi-vn/pixi.js'),motion=require('motion'),canvas=require('@drincs/pixi-vn/canvas'),core=require('@drincs/pixi-vn/core');function _interopDefault(e){return e&&e.__esModule?e:{default:e}}var U__default=/*#__PURE__*/_interopDefault(U);var it=Object.create;var X=Object.defineProperty;var nt=Object.getOwnPropertyDescriptor;var rt=Object.getOwnPropertyNames;var at=Object.getPrototypeOf,st=Object.prototype.hasOwnProperty;var M=(o=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(o,{get:(t,r)=>(typeof require<"u"?require:t)[r]}):o)(function(o){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+o+'" is not supported')});var $=(o,t)=>()=>(t||o((t={exports:{}}).exports,t),t.exports);var ot=(o,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let e of rt(t))!st.call(o,e)&&e!==r&&X(o,e,{get:()=>t[e],enumerable:!(n=nt(t,e))||n.enumerable});return o};var N=(o,t,r)=>(r=o!=null?it(at(o)):{},ot(X(r,"default",{value:o,enumerable:true}),o));var L=$((F,K)=>{(function(o,t){typeof F=="object"?K.exports=F=t():typeof define=="function"&&define.amd?define([],t):o.CryptoJS=t();})(F,function(){var o=o||(function(t,r){var n;if(typeof window<"u"&&window.crypto&&(n=window.crypto),typeof self<"u"&&self.crypto&&(n=self.crypto),typeof globalThis<"u"&&globalThis.crypto&&(n=globalThis.crypto),!n&&typeof window<"u"&&window.msCrypto&&(n=window.msCrypto),!n&&typeof global<"u"&&global.crypto&&(n=global.crypto),!n&&typeof M=="function")try{n=M("crypto");}catch{}var e=function(){if(n){if(typeof n.getRandomValues=="function")try{return n.getRandomValues(new Uint32Array(1))[0]}catch{}if(typeof n.randomBytes=="function")try{return n.randomBytes(4).readInt32LE()}catch{}}throw new Error("Native crypto module could not be used to get secure random number.")},s=Object.create||(function(){function i(){}return function(a){var m;return i.prototype=a,m=new i,i.prototype=null,m}})(),c={},u=c.lib={},y=u.Base=(function(){return {extend:function(i){var a=s(this);return i&&a.mixIn(i),(!a.hasOwnProperty("init")||this.init===a.init)&&(a.init=function(){a.$super.init.apply(this,arguments);}),a.init.prototype=a,a.$super=this,a},create:function(){var i=this.extend();return i.init.apply(i,arguments),i},init:function(){},mixIn:function(i){for(var a in i)i.hasOwnProperty(a)&&(this[a]=i[a]);i.hasOwnProperty("toString")&&(this.toString=i.toString);},clone:function(){return this.init.prototype.extend(this)}}})(),h=u.WordArray=y.extend({init:function(i,a){i=this.words=i||[],a!=r?this.sigBytes=a:this.sigBytes=i.length*4;},toString:function(i){return (i||p).stringify(this)},concat:function(i){var a=this.words,m=i.words,d=this.sigBytes,T=i.sigBytes;if(this.clamp(),d%4)for(var b=0;b<T;b++){var I=m[b>>>2]>>>24-b%4*8&255;a[d+b>>>2]|=I<<24-(d+b)%4*8;}else for(var k=0;k<T;k+=4)a[d+k>>>2]=m[k>>>2];return this.sigBytes+=T,this},clamp:function(){var i=this.words,a=this.sigBytes;i[a>>>2]&=4294967295<<32-a%4*8,i.length=t.ceil(a/4);},clone:function(){var i=y.clone.call(this);return i.words=this.words.slice(0),i},random:function(i){for(var a=[],m=0;m<i;m+=4)a.push(e());return new h.init(a,i)}}),l=c.enc={},p=l.Hex={stringify:function(i){for(var a=i.words,m=i.sigBytes,d=[],T=0;T<m;T++){var b=a[T>>>2]>>>24-T%4*8&255;d.push((b>>>4).toString(16)),d.push((b&15).toString(16));}return d.join("")},parse:function(i){for(var a=i.length,m=[],d=0;d<a;d+=2)m[d>>>3]|=parseInt(i.substr(d,2),16)<<24-d%8*4;return new h.init(m,a/2)}},g=l.Latin1={stringify:function(i){for(var a=i.words,m=i.sigBytes,d=[],T=0;T<m;T++){var b=a[T>>>2]>>>24-T%4*8&255;d.push(String.fromCharCode(b));}return d.join("")},parse:function(i){for(var a=i.length,m=[],d=0;d<a;d++)m[d>>>2]|=(i.charCodeAt(d)&255)<<24-d%4*8;return new h.init(m,a)}},A=l.Utf8={stringify:function(i){try{return decodeURIComponent(escape(g.stringify(i)))}catch{throw new Error("Malformed UTF-8 data")}},parse:function(i){return g.parse(unescape(encodeURIComponent(i)))}},v=u.BufferedBlockAlgorithm=y.extend({reset:function(){this._data=new h.init,this._nDataBytes=0;},_append:function(i){typeof i=="string"&&(i=A.parse(i)),this._data.concat(i),this._nDataBytes+=i.sigBytes;},_process:function(i){var a,m=this._data,d=m.words,T=m.sigBytes,b=this.blockSize,I=b*4,k=T/I;i?k=t.ceil(k):k=t.max((k|0)-this._minBufferSize,0);var x=k*b,S=t.min(x*4,T);if(x){for(var D=0;D<x;D+=b)this._doProcessBlock(d,D);a=d.splice(0,x),m.sigBytes-=S;}return new h.init(a,S)},clone:function(){var i=y.clone.call(this);return i._data=this._data.clone(),i},_minBufferSize:0});u.Hasher=v.extend({cfg:y.extend(),init:function(i){this.cfg=this.cfg.extend(i),this.reset();},reset:function(){v.reset.call(this),this._doReset();},update:function(i){return this._append(i),this._process(),this},finalize:function(i){i&&this._append(i);var a=this._doFinalize();return a},blockSize:512/32,_createHelper:function(i){return function(a,m){return new i.init(m).finalize(a)}},_createHmacHelper:function(i){return function(a,m){return new f.HMAC.init(i,m).finalize(a)}}});var f=c.algo={};return c})(Math);return o});});var Y=$((q,V)=>{(function(o,t){typeof q=="object"?V.exports=q=t(L()):typeof define=="function"&&define.amd?define(["./core"],t):t(o.CryptoJS);})(q,function(o){return (function(){var t=o,r=t.lib,n=r.WordArray,e=r.Hasher,s=t.algo,c=[],u=s.SHA1=e.extend({_doReset:function(){this._hash=new n.init([1732584193,4023233417,2562383102,271733878,3285377520]);},_doProcessBlock:function(y,h){for(var l=this._hash.words,p=l[0],g=l[1],A=l[2],v=l[3],_=l[4],f=0;f<80;f++){if(f<16)c[f]=y[h+f]|0;else {var i=c[f-3]^c[f-8]^c[f-14]^c[f-16];c[f]=i<<1|i>>>31;}var a=(p<<5|p>>>27)+_+c[f];f<20?a+=(g&A|~g&v)+1518500249:f<40?a+=(g^A^v)+1859775393:f<60?a+=(g&A|g&v|A&v)-1894007588:a+=(g^A^v)-899497514,_=v,v=A,A=g<<30|g>>>2,g=p,p=a;}l[0]=l[0]+p|0,l[1]=l[1]+g|0,l[2]=l[2]+A|0,l[3]=l[3]+v|0,l[4]=l[4]+_|0;},_doFinalize:function(){var y=this._data,h=y.words,l=this._nDataBytes*8,p=y.sigBytes*8;return h[p>>>5]|=128<<24-p%32,h[(p+64>>>9<<4)+14]=Math.floor(l/4294967296),h[(p+64>>>9<<4)+15]=l,y.sigBytes=h.length*4,this._process(),this._hash},clone:function(){var y=e.clone.call(this);return y._hash=this._hash.clone(),y}});t.SHA1=e._createHelper(u),t.HmacSHA1=e._createHmacHelper(u);})(),o.SHA1});});var E=o=>t=>{let r=({lastTime:n})=>t(n);return {start:(n=true)=>{o.add(r),o.start();},stop:()=>o.remove(r),now:()=>o.lastTime}};function O(o,t,r){if(Array.isArray(o)&&Array.isArray(o[0])){t&&"repeat"in t&&t?.repeat===null&&(t.repeat=1/0),o.forEach(c=>{if(Array.isArray(c)&&c.length===3){let[u,y,h]=c;h&&"repeat"in h&&h?.repeat===null&&(h.repeat=1/0);}});let{ticker:n=new U__default.default.Ticker,driver:e=E(n),...s}=t||{};return motion.animate(o,{driver:e,...s})}else {r&&"repeat"in r&&r?.repeat===null&&(r.repeat=1/0);let{ticker:n=new U__default.default.Ticker,driver:e=E(n),...s}=r||{};return motion.animate(o,t,{driver:e,...s})}}function ct(o,t){let{ticker:r=new U__default.default.Ticker,driver:n=E(r),repeat:e,...s}=t||{},c={x:0},u=[],y=[],h=0;o.forEach((A,v)=>{let{onComplete:_,onPlay:f,delay:i=0,duration:a=.3,...m}=A,d=typeof i=="function"?i(0,1):i,T=h+d,b=T+a;u.push({start:T,end:b,onPlay:f,onComplete:_}),y.push([c,{x:v+1},{...m,delay:i,duration:a}]),h=b;});let l=h,p=O(y,{...s,repeat:e,driver:n});if(u.length>0&&l>0){let I=function(){if(a)return;for(i+=r.deltaMS/1e3;!a&&i>=l;){if(d(),f++,f>=v){b();return}i-=l;}let x=T(i);x===-1?_>=0&&d():x!==_&&m(x);};let A=e===null?1/0:e,v=A===void 0?1:A+1,_=-1,f=0,i=0,a=false,m=x=>{_>=0&&u[_].onComplete?.(),_=x,u[_].onPlay?.();},d=()=>{_>=0&&u[_].onComplete?.(),_=-1;},T=x=>{for(let S=0;S<u.length;S++){if(x<u[S].start)return -1;if(x<u[S].end)return S}return u.length-1},b=()=>{a=true,r.remove(I);};r.add(I);let k=p.stop.bind(p);p.stop=()=>{b(),k();};}return p}var Z=N(Y());var j=class o{constructor(t,r){let{filter:n,apply:e,duration:s,priority:c,id:u=this.generateTickerId(t),canvasElementAliases:y=[],cleanup:h}=r||{},l=n?void 0:o.resolveFilterRef(t.filterRef),p=n??l,g=!p&&!e&&t.valueRef?canvas.createFilterTransitionApplier(t.valueRef.alias,t.valueRef.config):void 0,A=e??g?.apply,v=t.keyframes?.value?.[0];if(g&&typeof v=="number")try{g.apply(v);}catch{}let _=h??g?.cleanup;if(!p&&!A)throw new core.PixiError("not_implemented","MotionFilterTicker requires either a `filter` instance, an `apply` callback, or a resolvable `filterRef`; it cannot be reconstructed from saved/serialized ticker args.");this._args=t,this.filter=p,this.apply=A,this.duration=s,this.priority=c,this.id=u,this.canvasElementAliases=y;let f=l&&t.filterRef?.detach?t.filterRef.alias:void 0;this.cleanup=_??(f&&l?()=>o.detachFilter(f,l):void 0);}id;filter;apply;cleanup;_args;static resolveFilterRef(t){if(t)return o.componentFilters(t.alias)[t.index]}static componentFilters(t){let r=canvas.canvas.find(t)?.filters;return r?Array.isArray(r)?[...r]:[r]:[]}static detachFilter(t,r){let n=canvas.canvas.find(t);if(n){let e=o.componentFilters(t).filter(s=>s!==r);n.filters=e.length>0?e:null;}r.destroy();}get args(){let t=this._args.filterRef;if(t&&this.filter){let r=o.componentFilters(t.alias).indexOf(this.filter);r!==-1&&(t={...t,index:r});}return {...this._args,filterRef:t,time:this._animation?.time}}duration;priority;ticker=new U__default.default.Ticker;_animation;stopped=false;_paused=false;suppressWritesDuring(t){let r=this._paused;this._paused=true;try{return t()}finally{this._paused=r;}}canvasElementAliases=[];generateTickerId(...t){try{return (0,Z.default)(JSON.stringify(t)).toString()+"_motion_filter_"+Math.random().toString(36).substring(7)}catch(r){throw new core.PixiError("not_json_serializable",`Error to generate ticker id: ${r}`)}}timeout=50;async complete(){this.animation.complete(),await new Promise(t=>setTimeout(t,this.timeout));}stop(){this.stopped=true,this.animation.stop();}start(){if(this.args.options?.autoplay===false)return;this._paused=false;let t=this.animation;typeof this._args.time=="number"?(this._paused=true,t.play(),this.ticker.addOnce(()=>{this._paused=false;})):t.play();}onComplete=()=>{let t=this.cleanup;t&&this.ticker.addOnce(()=>t());let r=this.id,n=this._args.options?.aliasToRemoveAfter||[];typeof n=="string"&&(n=[n]);let e=this._args.options?.tickerAliasToResume||[];typeof e=="string"&&(e=[e]);let s=this._args.options?.tickerIdToResume||[];typeof s=="string"&&(s=[s]),tickers.tickers.onComplete(r,{aliasToRemoveAfter:n,tickerAliasToResume:e,tickerIdToResume:s,stopTicker:false});};createItem(){let t=this.filter;return new Proxy(t,{set:(r,n,e)=>(this.stopped||this._paused||this._args.startState&&this._args.startState[n]===e||(r[n]=e),true),get:(r,n)=>{if(this._args.startState||(this._args.startState={}),n in this._args.startState)return this._args.startState[n];let e=r[n];return this._args.startState={...this._args.startState,[n]:e},e}})}createUpdateHandler(t){return ()=>{this.stopped||this._paused||this.apply?.(t.value);}}pause(){this.animation&&(this._paused=true,this.animation.pause());}play(){this._paused=false,this.animation.play();}get paused(){return this.animation?this.animation.state==="paused":true}};var P=class extends j{get animation(){let t=this._animation;if(t)return t;let r=typeof this._args.time=="number",n=()=>{if(this.filter){let s=this.createItem();return O(s,this._args.keyframes,{...this._args.options,onComplete:()=>this.onComplete(),ticker:this.ticker})}let e={value:0};return this.valueTarget=e,O(e,this._args.keyframes,{...this._args.options,onUpdate:this.createUpdateHandler(e),onComplete:()=>this.onComplete(),ticker:this.ticker})};if(t=r?this.suppressWritesDuring(n):n(),r){t.time=this._args.time;let e=this.valueTarget?.value;!this.filter&&typeof e=="number"&&this.apply?.(e);}return this._animation=t,t}valueTarget;alias="motion-filter"};var tt=N(Y());var w=class{constructor(t,r){let{duration:n,priority:e,id:s=this.generateTickerId(r),canvasElementAliases:c=[]}=r||{};this._args=t,this.duration=n,this.priority=e,this.id=s,this.canvasElementAliases=c;}id;_args;get args(){return {...this._args,time:this._animation?.time}}duration;priority;ticker=new U__default.default.Ticker;_animation;stopped=false;_paused=false;suppressWritesDuring(t){let r=this._paused;this._paused=true;try{return t()}finally{this._paused=r;}}canvasElementAliases=[];getItemByAlias(t){if(!this.canvasElementAliases.includes(t))return;let r=canvas.canvas.find(t);if(r)return r}generateTickerId(...t){try{return (0,tt.default)(JSON.stringify(t)).toString()+"_motion_"+Math.random().toString(36).substring(7)}catch(r){throw new core.PixiError("not_json_serializable",`Error to generate ticker id: ${r}`)}}timeout=50;async complete(){this.animation.complete(),await new Promise(t=>setTimeout(t,this.timeout));}stop(){this.stopped=true,this.animation.stop();}start(){if(this.args.options?.autoplay===false)return;this._paused=false;let t=this.animation;typeof this._args.time=="number"?(this._paused=true,t.play(),this.ticker.addOnce(()=>{this._paused=false;})):t.play();}onComplete=()=>{let t=this.id,r=this._args.options?.aliasToRemoveAfter||[];typeof r=="string"&&(r=[r]);let n=this._args.options?.tickerAliasToResume||[];typeof n=="string"&&(n=[n]);let e=this._args.options?.tickerIdToResume||[];typeof e=="string"&&(e=[e]),tickers.tickers.onComplete(t,{aliasToRemoveAfter:r,tickerAliasToResume:n,tickerIdToResume:e,stopTicker:false});};createItem(t){return new Proxy({alias:t},{set:({alias:r},n,e)=>{if(this.stopped||this._paused||this._args.startState&&this._args.startState[n]===e)return true;let s=this.getItemByAlias(r);if(!s)return true;switch(n){case "pivotX":s.pivot.x=e;break;case "pivotY":s.pivot.y=e;break;case "scaleX":s.scale.x=e;break;case "scaleY":s.scale.y=e;break;default:s[n]=e;break}return true},get:({alias:r},n)=>{if(this._args.startState||(this._args.startState={}),n in this._args.startState)return this._args.startState[n];let e=this.getItemByAlias(r);if(!e)return;let s;switch(n){case "pivotX":s=e.pivot.x;break;case "pivotY":s=e.pivot.y;break;case "scaleX":s=e.scale.x;break;case "scaleY":s=e.scale.y;break;default:s=e[n];break}return this._args.startState={...this._args.startState,[n]:s},s},has:({alias:r},n)=>{let e=this.getItemByAlias(r);if(!e)return false;switch(n){case "pivotX":return "pivot"in e&&"x"in e.pivot;case "pivotY":return "pivot"in e&&"y"in e.pivot;case "scaleX":return "scale"in e&&"x"in e.scale;case "scaleY":return "scale"in e&&"y"in e.scale;default:return n in e}},ownKeys:({alias:r})=>{let n=this.getItemByAlias(r);return n?Object.keys(n):[]}})}pause(){this.animation&&(this._paused=true,this.animation.pause());}play(){this._paused=false,this.animation.play();}get paused(){return this.animation?this.animation.state==="paused":true}};var R=class extends w{get animation(){let t=this._animation;if(t)return t;let r=this.canvasElementAliases[0],n=this.createItem(r),e=this._args.sequence.map((c,u)=>[n,c[0],{...c[1]||{},ticker:this.ticker,onComplete:u===this._args.sequence.length-1?()=>this.onComplete():void 0}]),s=typeof this._args.time=="number";return t=s?this.suppressWritesDuring(()=>O(e,this._args.options)):O(e,this._args.options),s&&(t.time=this._args.time),this._animation=t,t}alias="motion-sequence"};var B=class extends w{get animation(){let t=this._animation;if(t)return t;let r=this.canvasElementAliases.map(s=>this.createItem(s)),n=typeof this._args.time=="number",e=()=>O(r,this._args.keyframes,{...this._args.options,onComplete:()=>this.onComplete(),ticker:this.ticker});return t=n?this.suppressWritesDuring(e):e(),n&&(t.time=this._args.time),this._animation=t,t}alias="motion"};var C;(e=>(e.log=(s,...c)=>console.log(`[Pixi\u2019VN] ${s}`,...c),e.warn=(s,...c)=>console.warn(`[Pixi\u2019VN] ${s}`,...c),e.error=(s,...c)=>console.error(`[Pixi\u2019VN] ${s}`,...c),e.info=(s,...c)=>console.info(`[Pixi\u2019VN] ${s}`,...c)))(C||={});function W(o){try{if(typeof o>"u")return o;let t=JSON.stringify(o);return JSON.parse(t)}catch(t){throw C.error("Error creating exportable element",o,t),new core.PixiError("not_json_serializable","Error creating exportable element")}}var et;(r=>{function o(n,e,s,c){try{e=W(e);}catch(p){throw C.error("animate keyframes cannot contain functions or classes"),p}try{s=W(s);}catch(p){throw C.error("animate options cannot contain functions or classes"),p}let u=[];typeof n=="string"?u=[n]:Array.isArray(n)?u=n.map(p=>typeof p=="string"?p:p.label):u=[n.label];let y;Array.isArray(e)?y=new R({sequence:e,options:s},{priority:c,canvasElementAliases:u}):y=new B({keyframes:e,options:s},{priority:c,canvasElementAliases:u});let h=tickers.tickers.add(u,y),{completeOnContinue:l}=s||{};return h&&l&&tickers.tickers.completeOnStepEnd({id:h}),h}r.animate=o;function t(n,e,s,c,u,y,h,l){try{s=W(s);}catch(f){throw C.error("animateFilter keyframes cannot contain functions or classes"),f}try{c=W(c);}catch(f){throw C.error("animateFilter options cannot contain functions or classes"),f}let p=Array.isArray(n)?n:[n],g;if(e){let f=p[0],i=f?canvas.canvas.find(f):void 0,m=(i?.filters?Array.isArray(i.filters)?i.filters:[i.filters]:[]).indexOf(e);m!==-1&&(g={alias:f,index:m,detach:h?true:void 0});}let A=new P({keyframes:s,options:c,filterRef:g,valueRef:l},{filter:e,apply:y,priority:u,canvasElementAliases:p,cleanup:h}),v=tickers.tickers.add(p,A),{completeOnContinue:_}=c||{};return v&&_&&tickers.tickers.completeOnStepEnd({id:v}),v}r.animateFilter=t;})(et||={});var vt=et;tickers.RegisteredTickers.add(B,"motion");tickers.RegisteredTickers.add(R,"motion-sequence");tickers.RegisteredTickers.add(P,"motion-filter");exports.animate=O;exports.motion=vt;exports.motionDriver=E;exports.timeline=ct;
package/dist/motion.d.cts CHANGED
@@ -67,9 +67,14 @@ declare namespace motion {
67
67
  * `undefined`, ignored otherwise (the filter's own properties are written to directly instead).
68
68
  * @param cleanup Called once, right before completion handling, to detach/destroy the filter or tear
69
69
  * down whatever `apply` was driving.
70
+ * @param valueRef Serializable description of what `apply`/`cleanup` drive, saved with the ticker so it
71
+ * can be rebuilt on restore - see `MotionFilterTicker`'s `TArgs.valueRef`.
70
72
  * @returns The id of the ticker, or `undefined` if the ticker was not added.
71
73
  */
72
- function animateFilter(components: string | string[], filter: Filter | undefined, keyframes: Record<string, any>, options?: AnimationOptions, priority?: UPDATE_PRIORITY, apply?: (value: number) => void, cleanup?: () => void): string | undefined;
74
+ function animateFilter(components: string | string[], filter: Filter | undefined, keyframes: Record<string, any>, options?: AnimationOptions, priority?: UPDATE_PRIORITY, apply?: (value: number) => void, cleanup?: () => void, valueRef?: {
75
+ alias: string;
76
+ config: unknown;
77
+ }): string | undefined;
73
78
  }
74
79
 
75
80
  type SegmentOptions = AnimationOptions$1 & At;
package/dist/motion.d.ts CHANGED
@@ -67,9 +67,14 @@ declare namespace motion {
67
67
  * `undefined`, ignored otherwise (the filter's own properties are written to directly instead).
68
68
  * @param cleanup Called once, right before completion handling, to detach/destroy the filter or tear
69
69
  * down whatever `apply` was driving.
70
+ * @param valueRef Serializable description of what `apply`/`cleanup` drive, saved with the ticker so it
71
+ * can be rebuilt on restore - see `MotionFilterTicker`'s `TArgs.valueRef`.
70
72
  * @returns The id of the ticker, or `undefined` if the ticker was not added.
71
73
  */
72
- function animateFilter(components: string | string[], filter: Filter | undefined, keyframes: Record<string, any>, options?: AnimationOptions, priority?: UPDATE_PRIORITY, apply?: (value: number) => void, cleanup?: () => void): string | undefined;
74
+ function animateFilter(components: string | string[], filter: Filter | undefined, keyframes: Record<string, any>, options?: AnimationOptions, priority?: UPDATE_PRIORITY, apply?: (value: number) => void, cleanup?: () => void, valueRef?: {
75
+ alias: string;
76
+ config: unknown;
77
+ }): string | undefined;
73
78
  }
74
79
 
75
80
  type SegmentOptions = AnimationOptions$1 & At;
package/dist/motion.mjs CHANGED
@@ -1 +1 @@
1
- import {RegisteredTickers,tickers}from'@drincs/pixi-vn/tickers';import U from'@drincs/pixi-vn/pixi.js';import {animate}from'motion';import {canvas}from'@drincs/pixi-vn/canvas';import {PixiError}from'@drincs/pixi-vn/core';var it=Object.create;var X=Object.defineProperty;var nt=Object.getOwnPropertyDescriptor;var rt=Object.getOwnPropertyNames;var st=Object.getPrototypeOf,at=Object.prototype.hasOwnProperty;var M=(o=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(o,{get:(t,r)=>(typeof require<"u"?require:t)[r]}):o)(function(o){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+o+'" is not supported')});var $=(o,t)=>()=>(t||o((t={exports:{}}).exports,t),t.exports);var ot=(o,t,r,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let e of rt(t))!at.call(o,e)&&e!==r&&X(o,e,{get:()=>t[e],enumerable:!(i=nt(t,e))||i.enumerable});return o};var N=(o,t,r)=>(r=o!=null?it(st(o)):{},ot(X(r,"default",{value:o,enumerable:true}),o));var L=$((F,K)=>{(function(o,t){typeof F=="object"?K.exports=F=t():typeof define=="function"&&define.amd?define([],t):o.CryptoJS=t();})(F,function(){var o=o||(function(t,r){var i;if(typeof window<"u"&&window.crypto&&(i=window.crypto),typeof self<"u"&&self.crypto&&(i=self.crypto),typeof globalThis<"u"&&globalThis.crypto&&(i=globalThis.crypto),!i&&typeof window<"u"&&window.msCrypto&&(i=window.msCrypto),!i&&typeof global<"u"&&global.crypto&&(i=global.crypto),!i&&typeof M=="function")try{i=M("crypto");}catch{}var e=function(){if(i){if(typeof i.getRandomValues=="function")try{return i.getRandomValues(new Uint32Array(1))[0]}catch{}if(typeof i.randomBytes=="function")try{return i.randomBytes(4).readInt32LE()}catch{}}throw new Error("Native crypto module could not be used to get secure random number.")},a=Object.create||(function(){function n(){}return function(s){var d;return n.prototype=s,d=new n,n.prototype=null,d}})(),c={},l=c.lib={},h=l.Base=(function(){return {extend:function(n){var s=a(this);return n&&s.mixIn(n),(!s.hasOwnProperty("init")||this.init===s.init)&&(s.init=function(){s.$super.init.apply(this,arguments);}),s.init.prototype=s,s.$super=this,s},create:function(){var n=this.extend();return n.init.apply(n,arguments),n},init:function(){},mixIn:function(n){for(var s in n)n.hasOwnProperty(s)&&(this[s]=n[s]);n.hasOwnProperty("toString")&&(this.toString=n.toString);},clone:function(){return this.init.prototype.extend(this)}}})(),u=l.WordArray=h.extend({init:function(n,s){n=this.words=n||[],s!=r?this.sigBytes=s:this.sigBytes=n.length*4;},toString:function(n){return (n||m).stringify(this)},concat:function(n){var s=this.words,d=n.words,f=this.sigBytes,v=n.sigBytes;if(this.clamp(),f%4)for(var T=0;T<v;T++){var I=d[T>>>2]>>>24-T%4*8&255;s[f+T>>>2]|=I<<24-(f+T)%4*8;}else for(var k=0;k<v;k+=4)s[f+k>>>2]=d[k>>>2];return this.sigBytes+=v,this},clamp:function(){var n=this.words,s=this.sigBytes;n[s>>>2]&=4294967295<<32-s%4*8,n.length=t.ceil(s/4);},clone:function(){var n=h.clone.call(this);return n.words=this.words.slice(0),n},random:function(n){for(var s=[],d=0;d<n;d+=4)s.push(e());return new u.init(s,n)}}),p=c.enc={},m=p.Hex={stringify:function(n){for(var s=n.words,d=n.sigBytes,f=[],v=0;v<d;v++){var T=s[v>>>2]>>>24-v%4*8&255;f.push((T>>>4).toString(16)),f.push((T&15).toString(16));}return f.join("")},parse:function(n){for(var s=n.length,d=[],f=0;f<s;f+=2)d[f>>>3]|=parseInt(n.substr(f,2),16)<<24-f%8*4;return new u.init(d,s/2)}},b=p.Latin1={stringify:function(n){for(var s=n.words,d=n.sigBytes,f=[],v=0;v<d;v++){var T=s[v>>>2]>>>24-v%4*8&255;f.push(String.fromCharCode(T));}return f.join("")},parse:function(n){for(var s=n.length,d=[],f=0;f<s;f++)d[f>>>2]|=(n.charCodeAt(f)&255)<<24-f%4*8;return new u.init(d,s)}},A=p.Utf8={stringify:function(n){try{return decodeURIComponent(escape(b.stringify(n)))}catch{throw new Error("Malformed UTF-8 data")}},parse:function(n){return b.parse(unescape(encodeURIComponent(n)))}},_=l.BufferedBlockAlgorithm=h.extend({reset:function(){this._data=new u.init,this._nDataBytes=0;},_append:function(n){typeof n=="string"&&(n=A.parse(n)),this._data.concat(n),this._nDataBytes+=n.sigBytes;},_process:function(n){var s,d=this._data,f=d.words,v=d.sigBytes,T=this.blockSize,I=T*4,k=v/I;n?k=t.ceil(k):k=t.max((k|0)-this._minBufferSize,0);var x=k*T,S=t.min(x*4,v);if(x){for(var D=0;D<x;D+=T)this._doProcessBlock(f,D);s=f.splice(0,x),d.sigBytes-=S;}return new u.init(s,S)},clone:function(){var n=h.clone.call(this);return n._data=this._data.clone(),n},_minBufferSize:0});l.Hasher=_.extend({cfg:h.extend(),init:function(n){this.cfg=this.cfg.extend(n),this.reset();},reset:function(){_.reset.call(this),this._doReset();},update:function(n){return this._append(n),this._process(),this},finalize:function(n){n&&this._append(n);var s=this._doFinalize();return s},blockSize:512/32,_createHelper:function(n){return function(s,d){return new n.init(d).finalize(s)}},_createHmacHelper:function(n){return function(s,d){return new y.HMAC.init(n,d).finalize(s)}}});var y=c.algo={};return c})(Math);return o});});var Y=$((q,V)=>{(function(o,t){typeof q=="object"?V.exports=q=t(L()):typeof define=="function"&&define.amd?define(["./core"],t):t(o.CryptoJS);})(q,function(o){return (function(){var t=o,r=t.lib,i=r.WordArray,e=r.Hasher,a=t.algo,c=[],l=a.SHA1=e.extend({_doReset:function(){this._hash=new i.init([1732584193,4023233417,2562383102,271733878,3285377520]);},_doProcessBlock:function(h,u){for(var p=this._hash.words,m=p[0],b=p[1],A=p[2],_=p[3],g=p[4],y=0;y<80;y++){if(y<16)c[y]=h[u+y]|0;else {var n=c[y-3]^c[y-8]^c[y-14]^c[y-16];c[y]=n<<1|n>>>31;}var s=(m<<5|m>>>27)+g+c[y];y<20?s+=(b&A|~b&_)+1518500249:y<40?s+=(b^A^_)+1859775393:y<60?s+=(b&A|b&_|A&_)-1894007588:s+=(b^A^_)-899497514,g=_,_=A,A=b<<30|b>>>2,b=m,m=s;}p[0]=p[0]+m|0,p[1]=p[1]+b|0,p[2]=p[2]+A|0,p[3]=p[3]+_|0,p[4]=p[4]+g|0;},_doFinalize:function(){var h=this._data,u=h.words,p=this._nDataBytes*8,m=h.sigBytes*8;return u[m>>>5]|=128<<24-m%32,u[(m+64>>>9<<4)+14]=Math.floor(p/4294967296),u[(m+64>>>9<<4)+15]=p,h.sigBytes=u.length*4,this._process(),this._hash},clone:function(){var h=e.clone.call(this);return h._hash=this._hash.clone(),h}});t.SHA1=e._createHelper(l),t.HmacSHA1=e._createHmacHelper(l);})(),o.SHA1});});var E=o=>t=>{let r=({lastTime:i})=>t(i);return {start:(i=true)=>{o.add(r),o.start();},stop:()=>o.remove(r),now:()=>o.lastTime}};function O(o,t,r){if(Array.isArray(o)&&Array.isArray(o[0])){t&&"repeat"in t&&t?.repeat===null&&(t.repeat=1/0),o.forEach(c=>{if(Array.isArray(c)&&c.length===3){let[l,h,u]=c;u&&"repeat"in u&&u?.repeat===null&&(u.repeat=1/0);}});let{ticker:i=new U.Ticker,driver:e=E(i),...a}=t||{};return animate(o,{driver:e,...a})}else {r&&"repeat"in r&&r?.repeat===null&&(r.repeat=1/0);let{ticker:i=new U.Ticker,driver:e=E(i),...a}=r||{};return animate(o,t,{driver:e,...a})}}function ct(o,t){let{ticker:r=new U.Ticker,driver:i=E(r),repeat:e,...a}=t||{},c={x:0},l=[],h=[],u=0;o.forEach((A,_)=>{let{onComplete:g,onPlay:y,delay:n=0,duration:s=.3,...d}=A,f=typeof n=="function"?n(0,1):n,v=u+f,T=v+s;l.push({start:v,end:T,onPlay:y,onComplete:g}),h.push([c,{x:_+1},{...d,delay:n,duration:s}]),u=T;});let p=u,m=O(h,{...a,repeat:e,driver:i});if(l.length>0&&p>0){let I=function(){if(s)return;for(n+=r.deltaMS/1e3;!s&&n>=p;){if(f(),y++,y>=_){T();return}n-=p;}let x=v(n);x===-1?g>=0&&f():x!==g&&d(x);};let A=e===null?1/0:e,_=A===void 0?1:A+1,g=-1,y=0,n=0,s=false,d=x=>{g>=0&&l[g].onComplete?.(),g=x,l[g].onPlay?.();},f=()=>{g>=0&&l[g].onComplete?.(),g=-1;},v=x=>{for(let S=0;S<l.length;S++){if(x<l[S].start)return -1;if(x<l[S].end)return S}return l.length-1},T=()=>{s=true,r.remove(I);};r.add(I);let k=m.stop.bind(m);m.stop=()=>{T(),k();};}return m}var Z=N(Y());var j=class o{constructor(t,r){let{filter:i,apply:e,duration:a,priority:c,id:l=this.generateTickerId(t),canvasElementAliases:h=[],cleanup:u}=r||{},p=i?void 0:o.resolveFilterRef(t.filterRef),m=i??p;if(!m&&!e)throw new PixiError("not_implemented","MotionFilterTicker requires either a `filter` instance, an `apply` callback, or a resolvable `filterRef`; it cannot be reconstructed from saved/serialized ticker args.");this._args=t,this.filter=m,this.apply=e,this.duration=a,this.priority=c,this.id=l,this.canvasElementAliases=h;let b=p&&t.filterRef?.detach?t.filterRef.alias:void 0;this.cleanup=u??(b&&p?()=>o.detachFilter(b,p):void 0);}id;filter;apply;cleanup;_args;static resolveFilterRef(t){if(t)return o.componentFilters(t.alias)[t.index]}static componentFilters(t){let r=canvas.find(t)?.filters;return r?Array.isArray(r)?[...r]:[r]:[]}static detachFilter(t,r){let i=canvas.find(t);if(i){let e=o.componentFilters(t).filter(a=>a!==r);i.filters=e.length>0?e:null;}r.destroy();}get args(){let t=this._args.filterRef;if(t&&this.filter){let r=o.componentFilters(t.alias).indexOf(this.filter);r!==-1&&(t={...t,index:r});}return {...this._args,filterRef:t,time:this._animation?.time}}duration;priority;ticker=new U.Ticker;_animation;stopped=false;_paused=false;suppressWritesDuring(t){let r=this._paused;this._paused=true;try{return t()}finally{this._paused=r;}}canvasElementAliases=[];generateTickerId(...t){try{return (0,Z.default)(JSON.stringify(t)).toString()+"_motion_filter_"+Math.random().toString(36).substring(7)}catch(r){throw new PixiError("not_json_serializable",`Error to generate ticker id: ${r}`)}}timeout=50;async complete(){this.animation.complete(),await new Promise(t=>setTimeout(t,this.timeout));}stop(){this.stopped=true,this.animation.stop();}start(){if(this.args.options?.autoplay===false)return;this._paused=false;let t=this.animation;typeof this._args.time=="number"?(this._paused=true,t.play(),this.ticker.addOnce(()=>{this._paused=false;})):t.play();}onComplete=()=>{let t=this.cleanup;t&&this.ticker.addOnce(()=>t());let r=this.id,i=this._args.options?.aliasToRemoveAfter||[];typeof i=="string"&&(i=[i]);let e=this._args.options?.tickerAliasToResume||[];typeof e=="string"&&(e=[e]);let a=this._args.options?.tickerIdToResume||[];typeof a=="string"&&(a=[a]),tickers.onComplete(r,{aliasToRemoveAfter:i,tickerAliasToResume:e,tickerIdToResume:a,stopTicker:false});};createItem(){let t=this.filter;return new Proxy(t,{set:(r,i,e)=>(this.stopped||this._paused||this._args.startState&&this._args.startState[i]===e||(r[i]=e),true),get:(r,i)=>{if(this._args.startState||(this._args.startState={}),i in this._args.startState)return this._args.startState[i];let e=r[i];return this._args.startState={...this._args.startState,[i]:e},e}})}createUpdateHandler(t){return ()=>{this.stopped||this._paused||this.apply?.(t.value);}}pause(){this.animation&&(this._paused=true,this.animation.pause());}play(){this._paused=false,this.animation.play();}get paused(){return this.animation?this.animation.state==="paused":true}};var P=class extends j{get animation(){let t=this._animation;if(t)return t;let r=typeof this._args.time=="number",i=()=>{if(this.filter){let a=this.createItem();return O(a,this._args.keyframes,{...this._args.options,onComplete:()=>this.onComplete(),ticker:this.ticker})}let e={value:0};return O(e,this._args.keyframes,{...this._args.options,onUpdate:this.createUpdateHandler(e),onComplete:()=>this.onComplete(),ticker:this.ticker})};return t=r?this.suppressWritesDuring(i):i(),r&&(t.time=this._args.time),this._animation=t,t}alias="motion-filter"};var tt=N(Y());var w=class{constructor(t,r){let{duration:i,priority:e,id:a=this.generateTickerId(r),canvasElementAliases:c=[]}=r||{};this._args=t,this.duration=i,this.priority=e,this.id=a,this.canvasElementAliases=c;}id;_args;get args(){return {...this._args,time:this._animation?.time}}duration;priority;ticker=new U.Ticker;_animation;stopped=false;_paused=false;suppressWritesDuring(t){let r=this._paused;this._paused=true;try{return t()}finally{this._paused=r;}}canvasElementAliases=[];getItemByAlias(t){if(!this.canvasElementAliases.includes(t))return;let r=canvas.find(t);if(r)return r}generateTickerId(...t){try{return (0,tt.default)(JSON.stringify(t)).toString()+"_motion_"+Math.random().toString(36).substring(7)}catch(r){throw new PixiError("not_json_serializable",`Error to generate ticker id: ${r}`)}}timeout=50;async complete(){this.animation.complete(),await new Promise(t=>setTimeout(t,this.timeout));}stop(){this.stopped=true,this.animation.stop();}start(){if(this.args.options?.autoplay===false)return;this._paused=false;let t=this.animation;typeof this._args.time=="number"?(this._paused=true,t.play(),this.ticker.addOnce(()=>{this._paused=false;})):t.play();}onComplete=()=>{let t=this.id,r=this._args.options?.aliasToRemoveAfter||[];typeof r=="string"&&(r=[r]);let i=this._args.options?.tickerAliasToResume||[];typeof i=="string"&&(i=[i]);let e=this._args.options?.tickerIdToResume||[];typeof e=="string"&&(e=[e]),tickers.onComplete(t,{aliasToRemoveAfter:r,tickerAliasToResume:i,tickerIdToResume:e,stopTicker:false});};createItem(t){return new Proxy({alias:t},{set:({alias:r},i,e)=>{if(this.stopped||this._paused||this._args.startState&&this._args.startState[i]===e)return true;let a=this.getItemByAlias(r);if(!a)return true;switch(i){case "pivotX":a.pivot.x=e;break;case "pivotY":a.pivot.y=e;break;case "scaleX":a.scale.x=e;break;case "scaleY":a.scale.y=e;break;default:a[i]=e;break}return true},get:({alias:r},i)=>{if(this._args.startState||(this._args.startState={}),i in this._args.startState)return this._args.startState[i];let e=this.getItemByAlias(r);if(!e)return;let a;switch(i){case "pivotX":a=e.pivot.x;break;case "pivotY":a=e.pivot.y;break;case "scaleX":a=e.scale.x;break;case "scaleY":a=e.scale.y;break;default:a=e[i];break}return this._args.startState={...this._args.startState,[i]:a},a},has:({alias:r},i)=>{let e=this.getItemByAlias(r);if(!e)return false;switch(i){case "pivotX":return "pivot"in e&&"x"in e.pivot;case "pivotY":return "pivot"in e&&"y"in e.pivot;case "scaleX":return "scale"in e&&"x"in e.scale;case "scaleY":return "scale"in e&&"y"in e.scale;default:return i in e}},ownKeys:({alias:r})=>{let i=this.getItemByAlias(r);return i?Object.keys(i):[]}})}pause(){this.animation&&(this._paused=true,this.animation.pause());}play(){this._paused=false,this.animation.play();}get paused(){return this.animation?this.animation.state==="paused":true}};var R=class extends w{get animation(){let t=this._animation;if(t)return t;let r=this.canvasElementAliases[0],i=this.createItem(r),e=this._args.sequence.map((c,l)=>[i,c[0],{...c[1]||{},ticker:this.ticker,onComplete:l===this._args.sequence.length-1?()=>this.onComplete():void 0}]),a=typeof this._args.time=="number";return t=a?this.suppressWritesDuring(()=>O(e,this._args.options)):O(e,this._args.options),a&&(t.time=this._args.time),this._animation=t,t}alias="motion-sequence"};var B=class extends w{get animation(){let t=this._animation;if(t)return t;let r=this.canvasElementAliases.map(a=>this.createItem(a)),i=typeof this._args.time=="number",e=()=>O(r,this._args.keyframes,{...this._args.options,onComplete:()=>this.onComplete(),ticker:this.ticker});return t=i?this.suppressWritesDuring(e):e(),i&&(t.time=this._args.time),this._animation=t,t}alias="motion"};var C;(e=>(e.log=(a,...c)=>console.log(`[Pixi\u2019VN] ${a}`,...c),e.warn=(a,...c)=>console.warn(`[Pixi\u2019VN] ${a}`,...c),e.error=(a,...c)=>console.error(`[Pixi\u2019VN] ${a}`,...c),e.info=(a,...c)=>console.info(`[Pixi\u2019VN] ${a}`,...c)))(C||={});function W(o){try{if(typeof o>"u")return o;let t=JSON.stringify(o);return JSON.parse(t)}catch(t){throw C.error("Error creating exportable element",o,t),new PixiError("not_json_serializable","Error creating exportable element")}}var et;(r=>{function o(i,e,a,c){try{e=W(e);}catch(m){throw C.error("animate keyframes cannot contain functions or classes"),m}try{a=W(a);}catch(m){throw C.error("animate options cannot contain functions or classes"),m}let l=[];typeof i=="string"?l=[i]:Array.isArray(i)?l=i.map(m=>typeof m=="string"?m:m.label):l=[i.label];let h;Array.isArray(e)?h=new R({sequence:e,options:a},{priority:c,canvasElementAliases:l}):h=new B({keyframes:e,options:a},{priority:c,canvasElementAliases:l});let u=tickers.add(l,h),{completeOnContinue:p}=a||{};return u&&p&&tickers.completeOnStepEnd({id:u}),u}r.animate=o;function t(i,e,a,c,l,h,u){try{a=W(a);}catch(g){throw C.error("animateFilter keyframes cannot contain functions or classes"),g}try{c=W(c);}catch(g){throw C.error("animateFilter options cannot contain functions or classes"),g}let p=Array.isArray(i)?i:[i],m;if(e){let g=p[0],y=g?canvas.find(g):void 0,s=(y?.filters?Array.isArray(y.filters)?y.filters:[y.filters]:[]).indexOf(e);s!==-1&&(m={alias:g,index:s,detach:u?true:void 0});}let b=new P({keyframes:a,options:c,filterRef:m},{filter:e,apply:h,priority:l,canvasElementAliases:p,cleanup:u}),A=tickers.add(p,b),{completeOnContinue:_}=c||{};return A&&_&&tickers.completeOnStepEnd({id:A}),A}r.animateFilter=t;})(et||={});var gt=et;RegisteredTickers.add(B,"motion");RegisteredTickers.add(R,"motion-sequence");RegisteredTickers.add(P,"motion-filter");export{O as animate,gt as motion,E as motionDriver,ct as timeline};
1
+ import {RegisteredTickers,tickers}from'@drincs/pixi-vn/tickers';import U from'@drincs/pixi-vn/pixi.js';import {animate}from'motion';import {canvas,createFilterTransitionApplier}from'@drincs/pixi-vn/canvas';import {PixiError}from'@drincs/pixi-vn/core';var it=Object.create;var X=Object.defineProperty;var nt=Object.getOwnPropertyDescriptor;var rt=Object.getOwnPropertyNames;var at=Object.getPrototypeOf,st=Object.prototype.hasOwnProperty;var M=(o=>typeof require<"u"?require:typeof Proxy<"u"?new Proxy(o,{get:(t,r)=>(typeof require<"u"?require:t)[r]}):o)(function(o){if(typeof require<"u")return require.apply(this,arguments);throw Error('Dynamic require of "'+o+'" is not supported')});var $=(o,t)=>()=>(t||o((t={exports:{}}).exports,t),t.exports);var ot=(o,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let e of rt(t))!st.call(o,e)&&e!==r&&X(o,e,{get:()=>t[e],enumerable:!(n=nt(t,e))||n.enumerable});return o};var N=(o,t,r)=>(r=o!=null?it(at(o)):{},ot(X(r,"default",{value:o,enumerable:true}),o));var L=$((F,K)=>{(function(o,t){typeof F=="object"?K.exports=F=t():typeof define=="function"&&define.amd?define([],t):o.CryptoJS=t();})(F,function(){var o=o||(function(t,r){var n;if(typeof window<"u"&&window.crypto&&(n=window.crypto),typeof self<"u"&&self.crypto&&(n=self.crypto),typeof globalThis<"u"&&globalThis.crypto&&(n=globalThis.crypto),!n&&typeof window<"u"&&window.msCrypto&&(n=window.msCrypto),!n&&typeof global<"u"&&global.crypto&&(n=global.crypto),!n&&typeof M=="function")try{n=M("crypto");}catch{}var e=function(){if(n){if(typeof n.getRandomValues=="function")try{return n.getRandomValues(new Uint32Array(1))[0]}catch{}if(typeof n.randomBytes=="function")try{return n.randomBytes(4).readInt32LE()}catch{}}throw new Error("Native crypto module could not be used to get secure random number.")},s=Object.create||(function(){function i(){}return function(a){var m;return i.prototype=a,m=new i,i.prototype=null,m}})(),c={},u=c.lib={},y=u.Base=(function(){return {extend:function(i){var a=s(this);return i&&a.mixIn(i),(!a.hasOwnProperty("init")||this.init===a.init)&&(a.init=function(){a.$super.init.apply(this,arguments);}),a.init.prototype=a,a.$super=this,a},create:function(){var i=this.extend();return i.init.apply(i,arguments),i},init:function(){},mixIn:function(i){for(var a in i)i.hasOwnProperty(a)&&(this[a]=i[a]);i.hasOwnProperty("toString")&&(this.toString=i.toString);},clone:function(){return this.init.prototype.extend(this)}}})(),h=u.WordArray=y.extend({init:function(i,a){i=this.words=i||[],a!=r?this.sigBytes=a:this.sigBytes=i.length*4;},toString:function(i){return (i||p).stringify(this)},concat:function(i){var a=this.words,m=i.words,d=this.sigBytes,T=i.sigBytes;if(this.clamp(),d%4)for(var b=0;b<T;b++){var I=m[b>>>2]>>>24-b%4*8&255;a[d+b>>>2]|=I<<24-(d+b)%4*8;}else for(var k=0;k<T;k+=4)a[d+k>>>2]=m[k>>>2];return this.sigBytes+=T,this},clamp:function(){var i=this.words,a=this.sigBytes;i[a>>>2]&=4294967295<<32-a%4*8,i.length=t.ceil(a/4);},clone:function(){var i=y.clone.call(this);return i.words=this.words.slice(0),i},random:function(i){for(var a=[],m=0;m<i;m+=4)a.push(e());return new h.init(a,i)}}),l=c.enc={},p=l.Hex={stringify:function(i){for(var a=i.words,m=i.sigBytes,d=[],T=0;T<m;T++){var b=a[T>>>2]>>>24-T%4*8&255;d.push((b>>>4).toString(16)),d.push((b&15).toString(16));}return d.join("")},parse:function(i){for(var a=i.length,m=[],d=0;d<a;d+=2)m[d>>>3]|=parseInt(i.substr(d,2),16)<<24-d%8*4;return new h.init(m,a/2)}},g=l.Latin1={stringify:function(i){for(var a=i.words,m=i.sigBytes,d=[],T=0;T<m;T++){var b=a[T>>>2]>>>24-T%4*8&255;d.push(String.fromCharCode(b));}return d.join("")},parse:function(i){for(var a=i.length,m=[],d=0;d<a;d++)m[d>>>2]|=(i.charCodeAt(d)&255)<<24-d%4*8;return new h.init(m,a)}},A=l.Utf8={stringify:function(i){try{return decodeURIComponent(escape(g.stringify(i)))}catch{throw new Error("Malformed UTF-8 data")}},parse:function(i){return g.parse(unescape(encodeURIComponent(i)))}},v=u.BufferedBlockAlgorithm=y.extend({reset:function(){this._data=new h.init,this._nDataBytes=0;},_append:function(i){typeof i=="string"&&(i=A.parse(i)),this._data.concat(i),this._nDataBytes+=i.sigBytes;},_process:function(i){var a,m=this._data,d=m.words,T=m.sigBytes,b=this.blockSize,I=b*4,k=T/I;i?k=t.ceil(k):k=t.max((k|0)-this._minBufferSize,0);var x=k*b,S=t.min(x*4,T);if(x){for(var D=0;D<x;D+=b)this._doProcessBlock(d,D);a=d.splice(0,x),m.sigBytes-=S;}return new h.init(a,S)},clone:function(){var i=y.clone.call(this);return i._data=this._data.clone(),i},_minBufferSize:0});u.Hasher=v.extend({cfg:y.extend(),init:function(i){this.cfg=this.cfg.extend(i),this.reset();},reset:function(){v.reset.call(this),this._doReset();},update:function(i){return this._append(i),this._process(),this},finalize:function(i){i&&this._append(i);var a=this._doFinalize();return a},blockSize:512/32,_createHelper:function(i){return function(a,m){return new i.init(m).finalize(a)}},_createHmacHelper:function(i){return function(a,m){return new f.HMAC.init(i,m).finalize(a)}}});var f=c.algo={};return c})(Math);return o});});var Y=$((q,V)=>{(function(o,t){typeof q=="object"?V.exports=q=t(L()):typeof define=="function"&&define.amd?define(["./core"],t):t(o.CryptoJS);})(q,function(o){return (function(){var t=o,r=t.lib,n=r.WordArray,e=r.Hasher,s=t.algo,c=[],u=s.SHA1=e.extend({_doReset:function(){this._hash=new n.init([1732584193,4023233417,2562383102,271733878,3285377520]);},_doProcessBlock:function(y,h){for(var l=this._hash.words,p=l[0],g=l[1],A=l[2],v=l[3],_=l[4],f=0;f<80;f++){if(f<16)c[f]=y[h+f]|0;else {var i=c[f-3]^c[f-8]^c[f-14]^c[f-16];c[f]=i<<1|i>>>31;}var a=(p<<5|p>>>27)+_+c[f];f<20?a+=(g&A|~g&v)+1518500249:f<40?a+=(g^A^v)+1859775393:f<60?a+=(g&A|g&v|A&v)-1894007588:a+=(g^A^v)-899497514,_=v,v=A,A=g<<30|g>>>2,g=p,p=a;}l[0]=l[0]+p|0,l[1]=l[1]+g|0,l[2]=l[2]+A|0,l[3]=l[3]+v|0,l[4]=l[4]+_|0;},_doFinalize:function(){var y=this._data,h=y.words,l=this._nDataBytes*8,p=y.sigBytes*8;return h[p>>>5]|=128<<24-p%32,h[(p+64>>>9<<4)+14]=Math.floor(l/4294967296),h[(p+64>>>9<<4)+15]=l,y.sigBytes=h.length*4,this._process(),this._hash},clone:function(){var y=e.clone.call(this);return y._hash=this._hash.clone(),y}});t.SHA1=e._createHelper(u),t.HmacSHA1=e._createHmacHelper(u);})(),o.SHA1});});var E=o=>t=>{let r=({lastTime:n})=>t(n);return {start:(n=true)=>{o.add(r),o.start();},stop:()=>o.remove(r),now:()=>o.lastTime}};function O(o,t,r){if(Array.isArray(o)&&Array.isArray(o[0])){t&&"repeat"in t&&t?.repeat===null&&(t.repeat=1/0),o.forEach(c=>{if(Array.isArray(c)&&c.length===3){let[u,y,h]=c;h&&"repeat"in h&&h?.repeat===null&&(h.repeat=1/0);}});let{ticker:n=new U.Ticker,driver:e=E(n),...s}=t||{};return animate(o,{driver:e,...s})}else {r&&"repeat"in r&&r?.repeat===null&&(r.repeat=1/0);let{ticker:n=new U.Ticker,driver:e=E(n),...s}=r||{};return animate(o,t,{driver:e,...s})}}function ct(o,t){let{ticker:r=new U.Ticker,driver:n=E(r),repeat:e,...s}=t||{},c={x:0},u=[],y=[],h=0;o.forEach((A,v)=>{let{onComplete:_,onPlay:f,delay:i=0,duration:a=.3,...m}=A,d=typeof i=="function"?i(0,1):i,T=h+d,b=T+a;u.push({start:T,end:b,onPlay:f,onComplete:_}),y.push([c,{x:v+1},{...m,delay:i,duration:a}]),h=b;});let l=h,p=O(y,{...s,repeat:e,driver:n});if(u.length>0&&l>0){let I=function(){if(a)return;for(i+=r.deltaMS/1e3;!a&&i>=l;){if(d(),f++,f>=v){b();return}i-=l;}let x=T(i);x===-1?_>=0&&d():x!==_&&m(x);};let A=e===null?1/0:e,v=A===void 0?1:A+1,_=-1,f=0,i=0,a=false,m=x=>{_>=0&&u[_].onComplete?.(),_=x,u[_].onPlay?.();},d=()=>{_>=0&&u[_].onComplete?.(),_=-1;},T=x=>{for(let S=0;S<u.length;S++){if(x<u[S].start)return -1;if(x<u[S].end)return S}return u.length-1},b=()=>{a=true,r.remove(I);};r.add(I);let k=p.stop.bind(p);p.stop=()=>{b(),k();};}return p}var Z=N(Y());var j=class o{constructor(t,r){let{filter:n,apply:e,duration:s,priority:c,id:u=this.generateTickerId(t),canvasElementAliases:y=[],cleanup:h}=r||{},l=n?void 0:o.resolveFilterRef(t.filterRef),p=n??l,g=!p&&!e&&t.valueRef?createFilterTransitionApplier(t.valueRef.alias,t.valueRef.config):void 0,A=e??g?.apply,v=t.keyframes?.value?.[0];if(g&&typeof v=="number")try{g.apply(v);}catch{}let _=h??g?.cleanup;if(!p&&!A)throw new PixiError("not_implemented","MotionFilterTicker requires either a `filter` instance, an `apply` callback, or a resolvable `filterRef`; it cannot be reconstructed from saved/serialized ticker args.");this._args=t,this.filter=p,this.apply=A,this.duration=s,this.priority=c,this.id=u,this.canvasElementAliases=y;let f=l&&t.filterRef?.detach?t.filterRef.alias:void 0;this.cleanup=_??(f&&l?()=>o.detachFilter(f,l):void 0);}id;filter;apply;cleanup;_args;static resolveFilterRef(t){if(t)return o.componentFilters(t.alias)[t.index]}static componentFilters(t){let r=canvas.find(t)?.filters;return r?Array.isArray(r)?[...r]:[r]:[]}static detachFilter(t,r){let n=canvas.find(t);if(n){let e=o.componentFilters(t).filter(s=>s!==r);n.filters=e.length>0?e:null;}r.destroy();}get args(){let t=this._args.filterRef;if(t&&this.filter){let r=o.componentFilters(t.alias).indexOf(this.filter);r!==-1&&(t={...t,index:r});}return {...this._args,filterRef:t,time:this._animation?.time}}duration;priority;ticker=new U.Ticker;_animation;stopped=false;_paused=false;suppressWritesDuring(t){let r=this._paused;this._paused=true;try{return t()}finally{this._paused=r;}}canvasElementAliases=[];generateTickerId(...t){try{return (0,Z.default)(JSON.stringify(t)).toString()+"_motion_filter_"+Math.random().toString(36).substring(7)}catch(r){throw new PixiError("not_json_serializable",`Error to generate ticker id: ${r}`)}}timeout=50;async complete(){this.animation.complete(),await new Promise(t=>setTimeout(t,this.timeout));}stop(){this.stopped=true,this.animation.stop();}start(){if(this.args.options?.autoplay===false)return;this._paused=false;let t=this.animation;typeof this._args.time=="number"?(this._paused=true,t.play(),this.ticker.addOnce(()=>{this._paused=false;})):t.play();}onComplete=()=>{let t=this.cleanup;t&&this.ticker.addOnce(()=>t());let r=this.id,n=this._args.options?.aliasToRemoveAfter||[];typeof n=="string"&&(n=[n]);let e=this._args.options?.tickerAliasToResume||[];typeof e=="string"&&(e=[e]);let s=this._args.options?.tickerIdToResume||[];typeof s=="string"&&(s=[s]),tickers.onComplete(r,{aliasToRemoveAfter:n,tickerAliasToResume:e,tickerIdToResume:s,stopTicker:false});};createItem(){let t=this.filter;return new Proxy(t,{set:(r,n,e)=>(this.stopped||this._paused||this._args.startState&&this._args.startState[n]===e||(r[n]=e),true),get:(r,n)=>{if(this._args.startState||(this._args.startState={}),n in this._args.startState)return this._args.startState[n];let e=r[n];return this._args.startState={...this._args.startState,[n]:e},e}})}createUpdateHandler(t){return ()=>{this.stopped||this._paused||this.apply?.(t.value);}}pause(){this.animation&&(this._paused=true,this.animation.pause());}play(){this._paused=false,this.animation.play();}get paused(){return this.animation?this.animation.state==="paused":true}};var P=class extends j{get animation(){let t=this._animation;if(t)return t;let r=typeof this._args.time=="number",n=()=>{if(this.filter){let s=this.createItem();return O(s,this._args.keyframes,{...this._args.options,onComplete:()=>this.onComplete(),ticker:this.ticker})}let e={value:0};return this.valueTarget=e,O(e,this._args.keyframes,{...this._args.options,onUpdate:this.createUpdateHandler(e),onComplete:()=>this.onComplete(),ticker:this.ticker})};if(t=r?this.suppressWritesDuring(n):n(),r){t.time=this._args.time;let e=this.valueTarget?.value;!this.filter&&typeof e=="number"&&this.apply?.(e);}return this._animation=t,t}valueTarget;alias="motion-filter"};var tt=N(Y());var w=class{constructor(t,r){let{duration:n,priority:e,id:s=this.generateTickerId(r),canvasElementAliases:c=[]}=r||{};this._args=t,this.duration=n,this.priority=e,this.id=s,this.canvasElementAliases=c;}id;_args;get args(){return {...this._args,time:this._animation?.time}}duration;priority;ticker=new U.Ticker;_animation;stopped=false;_paused=false;suppressWritesDuring(t){let r=this._paused;this._paused=true;try{return t()}finally{this._paused=r;}}canvasElementAliases=[];getItemByAlias(t){if(!this.canvasElementAliases.includes(t))return;let r=canvas.find(t);if(r)return r}generateTickerId(...t){try{return (0,tt.default)(JSON.stringify(t)).toString()+"_motion_"+Math.random().toString(36).substring(7)}catch(r){throw new PixiError("not_json_serializable",`Error to generate ticker id: ${r}`)}}timeout=50;async complete(){this.animation.complete(),await new Promise(t=>setTimeout(t,this.timeout));}stop(){this.stopped=true,this.animation.stop();}start(){if(this.args.options?.autoplay===false)return;this._paused=false;let t=this.animation;typeof this._args.time=="number"?(this._paused=true,t.play(),this.ticker.addOnce(()=>{this._paused=false;})):t.play();}onComplete=()=>{let t=this.id,r=this._args.options?.aliasToRemoveAfter||[];typeof r=="string"&&(r=[r]);let n=this._args.options?.tickerAliasToResume||[];typeof n=="string"&&(n=[n]);let e=this._args.options?.tickerIdToResume||[];typeof e=="string"&&(e=[e]),tickers.onComplete(t,{aliasToRemoveAfter:r,tickerAliasToResume:n,tickerIdToResume:e,stopTicker:false});};createItem(t){return new Proxy({alias:t},{set:({alias:r},n,e)=>{if(this.stopped||this._paused||this._args.startState&&this._args.startState[n]===e)return true;let s=this.getItemByAlias(r);if(!s)return true;switch(n){case "pivotX":s.pivot.x=e;break;case "pivotY":s.pivot.y=e;break;case "scaleX":s.scale.x=e;break;case "scaleY":s.scale.y=e;break;default:s[n]=e;break}return true},get:({alias:r},n)=>{if(this._args.startState||(this._args.startState={}),n in this._args.startState)return this._args.startState[n];let e=this.getItemByAlias(r);if(!e)return;let s;switch(n){case "pivotX":s=e.pivot.x;break;case "pivotY":s=e.pivot.y;break;case "scaleX":s=e.scale.x;break;case "scaleY":s=e.scale.y;break;default:s=e[n];break}return this._args.startState={...this._args.startState,[n]:s},s},has:({alias:r},n)=>{let e=this.getItemByAlias(r);if(!e)return false;switch(n){case "pivotX":return "pivot"in e&&"x"in e.pivot;case "pivotY":return "pivot"in e&&"y"in e.pivot;case "scaleX":return "scale"in e&&"x"in e.scale;case "scaleY":return "scale"in e&&"y"in e.scale;default:return n in e}},ownKeys:({alias:r})=>{let n=this.getItemByAlias(r);return n?Object.keys(n):[]}})}pause(){this.animation&&(this._paused=true,this.animation.pause());}play(){this._paused=false,this.animation.play();}get paused(){return this.animation?this.animation.state==="paused":true}};var R=class extends w{get animation(){let t=this._animation;if(t)return t;let r=this.canvasElementAliases[0],n=this.createItem(r),e=this._args.sequence.map((c,u)=>[n,c[0],{...c[1]||{},ticker:this.ticker,onComplete:u===this._args.sequence.length-1?()=>this.onComplete():void 0}]),s=typeof this._args.time=="number";return t=s?this.suppressWritesDuring(()=>O(e,this._args.options)):O(e,this._args.options),s&&(t.time=this._args.time),this._animation=t,t}alias="motion-sequence"};var B=class extends w{get animation(){let t=this._animation;if(t)return t;let r=this.canvasElementAliases.map(s=>this.createItem(s)),n=typeof this._args.time=="number",e=()=>O(r,this._args.keyframes,{...this._args.options,onComplete:()=>this.onComplete(),ticker:this.ticker});return t=n?this.suppressWritesDuring(e):e(),n&&(t.time=this._args.time),this._animation=t,t}alias="motion"};var C;(e=>(e.log=(s,...c)=>console.log(`[Pixi\u2019VN] ${s}`,...c),e.warn=(s,...c)=>console.warn(`[Pixi\u2019VN] ${s}`,...c),e.error=(s,...c)=>console.error(`[Pixi\u2019VN] ${s}`,...c),e.info=(s,...c)=>console.info(`[Pixi\u2019VN] ${s}`,...c)))(C||={});function W(o){try{if(typeof o>"u")return o;let t=JSON.stringify(o);return JSON.parse(t)}catch(t){throw C.error("Error creating exportable element",o,t),new PixiError("not_json_serializable","Error creating exportable element")}}var et;(r=>{function o(n,e,s,c){try{e=W(e);}catch(p){throw C.error("animate keyframes cannot contain functions or classes"),p}try{s=W(s);}catch(p){throw C.error("animate options cannot contain functions or classes"),p}let u=[];typeof n=="string"?u=[n]:Array.isArray(n)?u=n.map(p=>typeof p=="string"?p:p.label):u=[n.label];let y;Array.isArray(e)?y=new R({sequence:e,options:s},{priority:c,canvasElementAliases:u}):y=new B({keyframes:e,options:s},{priority:c,canvasElementAliases:u});let h=tickers.add(u,y),{completeOnContinue:l}=s||{};return h&&l&&tickers.completeOnStepEnd({id:h}),h}r.animate=o;function t(n,e,s,c,u,y,h,l){try{s=W(s);}catch(f){throw C.error("animateFilter keyframes cannot contain functions or classes"),f}try{c=W(c);}catch(f){throw C.error("animateFilter options cannot contain functions or classes"),f}let p=Array.isArray(n)?n:[n],g;if(e){let f=p[0],i=f?canvas.find(f):void 0,m=(i?.filters?Array.isArray(i.filters)?i.filters:[i.filters]:[]).indexOf(e);m!==-1&&(g={alias:f,index:m,detach:h?true:void 0});}let A=new P({keyframes:s,options:c,filterRef:g,valueRef:l},{filter:e,apply:y,priority:u,canvasElementAliases:p,cleanup:h}),v=tickers.add(p,A),{completeOnContinue:_}=c||{};return v&&_&&tickers.completeOnStepEnd({id:v}),v}r.animateFilter=t;})(et||={});var vt=et;RegisteredTickers.add(B,"motion");RegisteredTickers.add(R,"motion-sequence");RegisteredTickers.add(P,"motion-filter");export{O as animate,vt as motion,E as motionDriver,ct as timeline};