!function(n,t){"object"==typeof exports&&"undefined"!=typeof module?t(exports):"function"==typeof define&&define.amd?define(["exports"],t):t((n="undefined"!=typeof globalThis?globalThis:n||self).MotionUtils={})}(this,function(n){"use strict";function t(n,t){-1===n.indexOf(t)&&n.push(t)}function e(n,t){const e=n.indexOf(t);e>-1&&n.splice(e,1)}const i=(n,t,e)=>e>t?t:e{};const o=n=>n;const r=new Set;const c=(n,t,e)=>{const i=t-n;return((e-n)%i+i)%i+n},u=(n,t,e)=>n*(3*(1-n)*((1-n)*t+n*e)+n*n);function a(n,t,e,i){return n===t&&e===i?o:s=>{let o=0,r=1,c=s;for(let t=0;;t++){c>=o&&c<=r||(c=(o+r)/2);const i=u(c,n,e)-s;if(i*i<1e-28||40===t)break;i>0?r=c:o=c,c-=1e-7*i/(u(c+1e-7,n,e)-s-i)}return u(c,t,i)}}const l=n=>t=>t<=.5?n(2*t)/2:(2-n(2*(1-t)))/2,f=n=>t=>1-n(1-t),p=a(.33,1.53,.69,.99),d=f(p),h=l(d),g=n=>n>=1?1:(n*=2)<1?.5*d(n):.5*(2-Math.pow(2,-10*(n-1))),b=n=>1-Math.sin(Math.acos(n)),m=f(b),O=l(b),y=a(.42,0,1,1),I=a(0,0,.58,1),v=a(.42,0,.58,1);const M=n=>Array.isArray(n)&&"number"!=typeof n[0];const S=n=>Array.isArray(n)&&"number"==typeof n[0],k={linear:o,easeIn:y,easeInOut:v,easeOut:I,circIn:b,circInOut:O,circOut:m,backIn:d,backInOut:h,backOut:p,anticipate:g};n.MotionGlobalConfig={},n.SubscriptionManager=class{constructor(){this.subscriptions=[]}add(n){return t(this.subscriptions,n),()=>this.remove(n)}remove(n){e(this.subscriptions,n)}notify(n,t,e){const i=this.subscriptions.length;if(i)if(1===i)this.subscriptions[0](n,t,e);else for(let s=0;s{if(S(n)){n.length;const[t,e,i,s]=n;return a(t,e,i,s)}return"string"==typeof n?k[n]:n},n.getEasingForSegment=function(n,t){return M(n)?n[c(0,n.length,t)]:n},n.hasWarned=function(n){return r.has(n)},n.invariant=s,n.isBezierDefinition=S,n.isEasingArray=M,n.isNumericalString=n=>/^-?(?:\d+(?:\.\d+)?|\.\d+)$/u.test(n),n.isObject=n=>"object"==typeof n&&null!==n,n.isZeroValueString=n=>/^0[^.\s]+$/u.test(n),n.memo=function(n){let t;return()=>(void 0===t&&(t=n()),t)},n.millisecondsToSeconds=n=>n/1e3,n.mirrorEasing=l,n.moveItem=function([...n],t,e){const i=t<0?n.length+t:t;if(i>=0&&in.reduce((n,t)=>e=>t(n(e))),n.progress=(n,t,e)=>{const i=t-n;return i?(e-n)/i:1},n.removeItem=e,n.reverseEasing=f,n.secondsToMilliseconds=n=>1e3*n,n.steps=function(n,t="end"){return e=>{const s=(e="end"===t?Math.min(e,.999):Math.max(e,.001))*n,o="end"===t?Math.floor(s):Math.ceil(s);return i(0,1,o/n)}},n.velocityPerSecond=(n,t)=>t?n*(1e3/t):0,n.warnOnce=function(n,t,e){n||r.has(t)||(console.warn(function(n,t){return t?`${n}. For more information and steps for solving, visit https://motion.dev/troubleshooting/${t}`:n}(t,e)),r.add(t))},n.warning=()=>{},n.wrap=c});