// Metro module 1688 (f1689). import * as _recognizePrefixSuffix from "./recognizePrefixSuffix"; import * as _bisectRoot from "./bisectRoot"; import { HermesBuiltin } from "../_hermes/prelude"; const __initData = { code: "function pnpm_springTs2(){const{userConfig,checkIfConfigIsValid,underDampedSpringCalculations,criticallyDampedSpringCalculations,isAnimationTerminatingCalculation,calculateNewMassToMatchDuration,initialCalculations,scaleZetaToMatchClamps,toValue,callback,getReduceMotionForAnimation}=this.__closure;var _userConfig,_userConfig2;const defaultConfig={damping:10,mass:1,stiffness:100,overshootClamping:false,restDisplacementThreshold:0.01,restSpeedThreshold:2,velocity:0,duration:2000,dampingRatio:0.5,reduceMotion:undefined,clamp:undefined};const config={...defaultConfig,...userConfig,useDuration:!!((_userConfig=userConfig)!==null&&_userConfig!==void 0&&_userConfig.duration||(_userConfig2=userConfig)!==null&&_userConfig2!==void 0&&_userConfig2.dampingRatio),skipAnimation:false};config.skipAnimation=!checkIfConfigIsValid(config);if(config.duration===0){config.skipAnimation=true;}function springOnFrame(animation,now){const{toValue:toValue,startTimestamp:startTimestamp,current:current}=animation;const timeFromStart=now-startTimestamp;if(config.useDuration&&timeFromStart>=config.duration){animation.current=toValue;animation.lastTimestamp=0;return true;}if(config.skipAnimation){animation.current=toValue;animation.lastTimestamp=0;return true;}const{lastTimestamp:lastTimestamp,velocity:velocity}=animation;const deltaTime=Math.min(Math.max(now-lastTimestamp,0),64);animation.lastTimestamp=now;const t=deltaTime/1000;const v0=-velocity;const x0=toValue-current;const{zeta:zeta,omega0:omega0,omega1:omega1}=animation;const{position:newPosition,velocity:newVelocity}=zeta<1?underDampedSpringCalculations(animation,{zeta:zeta,v0:v0,x0:x0,omega0:omega0,omega1:omega1,t:t}):criticallyDampedSpringCalculations(animation,{v0:v0,x0:x0,omega0:omega0,t:t});animation.current=newPosition;animation.velocity=newVelocity;const{isOvershooting:isOvershooting,isVelocity:isVelocity,isDisplacement:isDisplacement}=isAnimationTerminatingCalculation(animation,config);const springIsNotInMove=isOvershooting||isVelocity&&isDisplacement;if(!config.useDuration&&springIsNotInMove){animation.velocity=0;animation.current=toValue;animation.lastTimestamp=0;return true;}return false;}function isTriggeredTwice(previousAnimation,animation){return(previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.lastTimestamp)&&(previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.startTimestamp)&&(previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.toValue)===animation.toValue&&(previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.duration)===animation.duration&&(previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.dampingRatio)===animation.dampingRatio;}function onStart(animation,value,now,previousAnimation){animation.current=value;animation.startValue=value;let mass=config.mass;const triggeredTwice=isTriggeredTwice(previousAnimation,animation);const duration=config.duration;const x0=triggeredTwice?previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.startValue:Number(animation.toValue)-value;if(previousAnimation){animation.velocity=(triggeredTwice?previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.velocity:(previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.velocity)+config.velocity)||0;}else{animation.velocity=config.velocity||0;}const toValueNum=Number(animation.toValue);if(toValueNum>value&&animation.velocity<0||toValueNum0){animation.velocity=0;}if(triggeredTwice){animation.zeta=(previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.zeta)||0;animation.omega0=(previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.omega0)||0;animation.omega1=(previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.omega1)||0;}else{if(config.useDuration){const actualDuration=triggeredTwice?duration-(((previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.lastTimestamp)||0)-((previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.startTimestamp)||0)):duration;config.duration=actualDuration;mass=calculateNewMassToMatchDuration(x0,config,animation.velocity);}const{zeta:zeta,omega0:omega0,omega1:omega1}=initialCalculations(mass,config);animation.zeta=zeta;animation.omega0=omega0;animation.omega1=omega1;if(config.clamp!==undefined){animation.zeta=scaleZetaToMatchClamps(animation,config.clamp);}}animation.lastTimestamp=(previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.lastTimestamp)||now;animation.startTimestamp=triggeredTwice?(previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.startTimestamp)||now:now;}return{onFrame:springOnFrame,onStart:onStart,toValue:toValue,velocity:config.velocity||0,current:toValue,startValue:0,callback:callback,lastTimestamp:0,startTimestamp:0,zeta:0,omega0:0,omega1:0,reduceMotion:getReduceMotionForAnimation(config.reduceMotion)};}" }; const n = function n(a0, a1, a2) { const toValue = a0; let c13162_1 = a1; const callback = a2; const u = function u() { const r5 = { damping: 10, mass: 1, stiffness: 100, overshootClamping: false, restDisplacementThreshold: 0.01, restSpeedThreshold: 2, velocity: 0, duration: 2000, dampingRatio: 0.5, reduceMotion: void 0, clamp: void 0 }; HermesBuiltin.copyDataProperties(r5, c13162_1); const duration = c13162_1?.duration; const r14 = duration ? !duration : !c13162_1?.dampingRatio; r5.useDuration = !r14; r5.skipAnimation = false; let c24545_0 = r5; r5.skipAnimation = !_bisectRoot.checkIfConfigIsValid(r5); if (r5.duration === 0) { r5.skipAnimation = true; } return { onFrame: function springOnFrame(a0, a1) { const { toValue: toValue2, startTimestamp, current } = a0; const r9 = a1 - startTimestamp; if (c24545_0.useDuration && r9 >= c24545_0.duration) { a0.current = toValue2; a0.lastTimestamp = 0; return true; } if (c24545_0.skipAnimation) { a0.current = toValue2; a0.lastTimestamp = 0; return true; } const { lastTimestamp, velocity } = a0; const r25 = Math.min(Math.max(a1 - lastTimestamp, 0), 64); a0.lastTimestamp = a1; const r27 = r25 / 1000; const v0 = -velocity; const x0 = toValue2 - current; const { zeta, omega0, omega1 } = a0; const r39 = zeta < 1 ? _bisectRoot.underDampedSpringCalculations(a0, { zeta, v0, x0, omega0, omega1, t: r27 }) : _bisectRoot.criticallyDampedSpringCalculations(a0, { v0, x0, omega0, t: r27 }); const { position, velocity: velocity2 } = r39; a0.current = position; a0.velocity = velocity2; const isAnimationTerminatingCalculation = _bisectRoot.isAnimationTerminatingCalculation(a0, c24545_0); let isOvershooting = isAnimationTerminatingCalculation.isOvershooting; let isVelocity = isAnimationTerminatingCalculation.isVelocity; const isDisplacement = isAnimationTerminatingCalculation.isDisplacement; if (!isOvershooting) { if (isVelocity) { isVelocity = isDisplacement; } isOvershooting = isVelocity; } let r61 = c24545_0.useDuration || !isOvershooting; if (!r61) { a0.velocity = 0; a0.current = toValue2; a0.lastTimestamp = 0; r61 = 0; } return !r61; }, onStart: function onStart(a0, a1, a2, a3) { let velocity; a0.current = a1; a0.startValue = a1; let mass = c24545_0.mass; let startTimestamp = a3?.lastTimestamp && a3?.startTimestamp && a3?.toValue === a0.toValue && a3?.duration === a0.duration && a3?.dampingRatio === a0.dampingRatio; const duration = c24545_0.duration; const r31 = startTimestamp ? a3?.startValue : Number(a0.toValue) - a1; if (a3) { const r35 = a3 == null; velocity = (startTimestamp ? r35 ? void 0 : a3.velocity : (r35 ? void 0 : a3.velocity) + c24545_0.velocity) || 0; } else { velocity = c24545_0.velocity || 0; } a0.velocity = velocity; const r41 = Number(a0.toValue); if (r41 > a1 && a0.velocity < 0 || r41 < a1 && a0.velocity > 0) { a0.velocity = 0; } if (startTimestamp) { a0.zeta = a3?.zeta || 0; a0.omega0 = a3?.omega0 || 0; a0.omega1 = a3?.omega1 || 0; } else { if (c24545_0.useDuration) { c24545_0.duration = startTimestamp ? duration - ((a3?.lastTimestamp || 0) - (a3?.startTimestamp || 0)) : duration; mass = _bisectRoot.calculateNewMassToMatchDuration(r31, c24545_0, a0.velocity); } const r67 = _bisectRoot.initialCalculations(mass, c24545_0); const { zeta, omega0, omega1 } = r67; a0.zeta = zeta; a0.omega0 = omega0; a0.omega1 = omega1; if (c24545_0.clamp !== void 0) { a0.zeta = _bisectRoot.scaleZetaToMatchClamps(a0, c24545_0.clamp); } } a0.lastTimestamp = a3?.lastTimestamp || a2; if (startTimestamp) { startTimestamp = a3?.startTimestamp; } if (!startTimestamp) { startTimestamp = a2; } a0.startTimestamp = startTimestamp; }, toValue, velocity: r5.velocity || 0, current: toValue, startValue: 0, callback, lastTimestamp: 0, startTimestamp: 0, zeta: 0, omega0: 0, omega1: 0, reduceMotion: _recognizePrefixSuffix.getReduceMotionForAnimation(r5.reduceMotion) }; }; u.__closure = { userConfig: a1, checkIfConfigIsValid: _bisectRoot.checkIfConfigIsValid, underDampedSpringCalculations: _bisectRoot.underDampedSpringCalculations, criticallyDampedSpringCalculations: _bisectRoot.criticallyDampedSpringCalculations, isAnimationTerminatingCalculation: _bisectRoot.isAnimationTerminatingCalculation, calculateNewMassToMatchDuration: _bisectRoot.calculateNewMassToMatchDuration, initialCalculations: _bisectRoot.initialCalculations, scaleZetaToMatchClamps: _bisectRoot.scaleZetaToMatchClamps, toValue: a0, callback: a2, getReduceMotionForAnimation: _recognizePrefixSuffix.getReduceMotionForAnimation }; u.__workletHash = 3229069592929; u.__initData = __initData; return _recognizePrefixSuffix.defineAnimation(a0, u); }; n.__closure = { defineAnimation: _recognizePrefixSuffix.defineAnimation, checkIfConfigIsValid: _bisectRoot.checkIfConfigIsValid, underDampedSpringCalculations: _bisectRoot.underDampedSpringCalculations, criticallyDampedSpringCalculations: _bisectRoot.criticallyDampedSpringCalculations, isAnimationTerminatingCalculation: _bisectRoot.isAnimationTerminatingCalculation, calculateNewMassToMatchDuration: _bisectRoot.calculateNewMassToMatchDuration, initialCalculations: _bisectRoot.initialCalculations, scaleZetaToMatchClamps: _bisectRoot.scaleZetaToMatchClamps, getReduceMotionForAnimation: _recognizePrefixSuffix.getReduceMotionForAnimation }; n.__workletHash = 15976080506910; n.__initData = { code: "function pnpm_springTs1(toValue,userConfig,callback){const{defineAnimation,checkIfConfigIsValid,underDampedSpringCalculations,criticallyDampedSpringCalculations,isAnimationTerminatingCalculation,calculateNewMassToMatchDuration,initialCalculations,scaleZetaToMatchClamps,getReduceMotionForAnimation}=this.__closure;return defineAnimation(toValue,function(){'worklet';const defaultConfig={damping:10,mass:1,stiffness:100,overshootClamping:false,restDisplacementThreshold:0.01,restSpeedThreshold:2,velocity:0,duration:2000,dampingRatio:0.5,reduceMotion:undefined,clamp:undefined};const config={...defaultConfig,...userConfig,useDuration:!!(userConfig!==null&&userConfig!==void 0&&userConfig.duration||userConfig!==null&&userConfig!==void 0&&userConfig.dampingRatio),skipAnimation:false};config.skipAnimation=!checkIfConfigIsValid(config);if(config.duration===0){config.skipAnimation=true;}function springOnFrame(animation,now){const{toValue:toValue,startTimestamp:startTimestamp,current:current}=animation;const timeFromStart=now-startTimestamp;if(config.useDuration&&timeFromStart>=config.duration){animation.current=toValue;animation.lastTimestamp=0;return true;}if(config.skipAnimation){animation.current=toValue;animation.lastTimestamp=0;return true;}const{lastTimestamp:lastTimestamp,velocity:velocity}=animation;const deltaTime=Math.min(Math.max(now-lastTimestamp,0),64);animation.lastTimestamp=now;const t=deltaTime/1000;const v0=-velocity;const x0=toValue-current;const{zeta:zeta,omega0:omega0,omega1:omega1}=animation;const{position:newPosition,velocity:newVelocity}=zeta<1?underDampedSpringCalculations(animation,{zeta:zeta,v0:v0,x0:x0,omega0:omega0,omega1:omega1,t:t}):criticallyDampedSpringCalculations(animation,{v0:v0,x0:x0,omega0:omega0,t:t});animation.current=newPosition;animation.velocity=newVelocity;const{isOvershooting:isOvershooting,isVelocity:isVelocity,isDisplacement:isDisplacement}=isAnimationTerminatingCalculation(animation,config);const springIsNotInMove=isOvershooting||isVelocity&&isDisplacement;if(!config.useDuration&&springIsNotInMove){animation.velocity=0;animation.current=toValue;animation.lastTimestamp=0;return true;}return false;}function isTriggeredTwice(previousAnimation,animation){return(previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.lastTimestamp)&&(previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.startTimestamp)&&(previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.toValue)===animation.toValue&&(previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.duration)===animation.duration&&(previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.dampingRatio)===animation.dampingRatio;}function onStart(animation,value,now,previousAnimation){animation.current=value;animation.startValue=value;let mass=config.mass;const triggeredTwice=isTriggeredTwice(previousAnimation,animation);const duration=config.duration;const x0=triggeredTwice?previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.startValue:Number(animation.toValue)-value;if(previousAnimation){animation.velocity=(triggeredTwice?previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.velocity:(previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.velocity)+config.velocity)||0;}else{animation.velocity=config.velocity||0;}const toValueNum=Number(animation.toValue);if(toValueNum>value&&animation.velocity<0||toValueNum0){animation.velocity=0;}if(triggeredTwice){animation.zeta=(previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.zeta)||0;animation.omega0=(previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.omega0)||0;animation.omega1=(previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.omega1)||0;}else{if(config.useDuration){const actualDuration=triggeredTwice?duration-(((previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.lastTimestamp)||0)-((previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.startTimestamp)||0)):duration;config.duration=actualDuration;mass=calculateNewMassToMatchDuration(x0,config,animation.velocity);}const{zeta:zeta,omega0:omega0,omega1:omega1}=initialCalculations(mass,config);animation.zeta=zeta;animation.omega0=omega0;animation.omega1=omega1;if(config.clamp!==undefined){animation.zeta=scaleZetaToMatchClamps(animation,config.clamp);}}animation.lastTimestamp=(previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.lastTimestamp)||now;animation.startTimestamp=triggeredTwice?(previousAnimation===null||previousAnimation===void 0?void 0:previousAnimation.startTimestamp)||now:now;}return{onFrame:springOnFrame,onStart:onStart,toValue:toValue,velocity:config.velocity||0,current:toValue,startValue:0,callback:callback,lastTimestamp:0,startTimestamp:0,zeta:0,omega0:0,omega1:0,reduceMotion:getReduceMotionForAnimation(config.reduceMotion)};});}" }; export { n as withSpring };