@tamagui/animations-react-native 3.0.0-beta.1313.1 → 3.0.0-beta.1341.1

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.
@@ -1 +1 @@
1
- {"version":3,"file":"createAnimations.native.js","names":[],"sources":["cjs/createAnimations.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar createAnimations_native_exports = {};\n__export(createAnimations_native_exports, {\n AnimatedText: () => AnimatedText,\n AnimatedView: () => AnimatedView,\n createAnimations: () => createAnimations,\n useAnimatedNumber: () => useAnimatedNumber,\n useAnimatedNumberReaction: () => useAnimatedNumberReaction,\n useAnimatedNumberStyle: () => useAnimatedNumberStyle,\n useAnimatedNumbersStyle: () => useAnimatedNumbersStyle\n});\nmodule.exports = __toCommonJS(createAnimations_native_exports);\nvar import_animation_helpers = require(\"@tamagui/animation-helpers\");\nvar import_constants = require(\"@tamagui/constants\");\nvar import_use_presence = require(\"@tamagui/use-presence\");\nvar import_web = require(\"@tamagui/web\");\nvar import_internal_runtime = require(\"@tamagui/web/internal-runtime\");\nvar import_react = __toESM(require(\"react\"), 1);\nvar import_react_native = require(\"react-native\");\nvar isFabric = !import_constants.isWeb && typeof global !== \"undefined\" && !!global.__nativeFabricUIManager;\nvar resolveDynamicValue = function(value, isDark) {\n if (value && typeof value === \"object\" && \"dynamic\" in value) {\n var dynamicValue = isDark ? value.dynamic.dark : value.dynamic.light;\n return dynamicValue;\n }\n return value;\n};\nvar animatedStyleKey = {\n transform: true,\n opacity: true\n};\nvar colorStyleKey = {\n backgroundColor: true,\n color: true,\n borderColor: true,\n borderLeftColor: true,\n borderRightColor: true,\n borderTopColor: true,\n borderBottomColor: true\n};\nvar layoutStyleKey = {\n height: true,\n width: true,\n minHeight: true,\n maxHeight: true,\n minWidth: true,\n maxWidth: true\n};\nfunction hasAnimatedLayoutKey(style, isDark, resolved) {\n for (var key in layoutStyleKey) {\n if (!(0, import_animation_helpers.getTransitionForKey)(resolved, key)) continue;\n if (typeof resolveDynamicValue(style[key], isDark) === \"number\") return true;\n }\n return false;\n}\nfunction isAnimatableColor(value) {\n return typeof value === \"string\" && (0, import_react_native.processColor)(value) != null;\n}\nvar costlyToAnimateStyleKey = {\n borderRadius: true,\n borderTopLeftRadius: true,\n borderTopRightRadius: true,\n borderBottomLeftRadius: true,\n borderBottomRightRadius: true,\n borderWidth: true,\n borderLeftWidth: true,\n borderRightWidth: true,\n borderTopWidth: true,\n borderBottomWidth: true,\n ...colorStyleKey\n};\nvar AnimatedView = import_react_native.Animated.View;\nvar AnimatedText = import_react_native.Animated.Text;\nfunction useAnimatedNumber(initial) {\n var state = import_react.default.useRef(null);\n if (!state.current) {\n state.current = {\n composite: null,\n val: new import_react_native.Animated.Value(initial),\n strategy: {\n type: \"spring\"\n }\n };\n }\n return {\n getInstance() {\n return state.current.val;\n },\n getValue() {\n return state.current.val[\"_value\"];\n },\n stop() {\n var _state_current_composite;\n (_state_current_composite = state.current.composite) === null || _state_current_composite === void 0 ? void 0 : _state_current_composite.stop();\n state.current.composite = null;\n },\n setValue(next) {\n var { type, ...config } = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {\n type: \"spring\"\n }, onFinish = arguments.length > 2 ? arguments[2] : void 0;\n var val = state.current.val;\n var handleFinish = onFinish ? function(param) {\n var { finished } = param;\n return finished ? onFinish() : null;\n } : void 0;\n if (type === \"direct\") {\n var _state_current_composite;\n (_state_current_composite = state.current.composite) === null || _state_current_composite === void 0 ? void 0 : _state_current_composite.stop();\n state.current.composite = null;\n val.setValue(next);\n onFinish === null || onFinish === void 0 ? void 0 : onFinish();\n } else if (type === \"spring\") {\n var _state_current_composite1;\n (_state_current_composite1 = state.current.composite) === null || _state_current_composite1 === void 0 ? void 0 : _state_current_composite1.stop();\n var composite = import_react_native.Animated.spring(val, {\n ...config,\n toValue: next,\n useNativeDriver: isFabric\n });\n composite.start(handleFinish);\n state.current.composite = composite;\n } else {\n var _state_current_composite2;\n (_state_current_composite2 = state.current.composite) === null || _state_current_composite2 === void 0 ? void 0 : _state_current_composite2.stop();\n var composite1 = import_react_native.Animated.timing(val, {\n ...config,\n toValue: next,\n useNativeDriver: isFabric\n });\n composite1.start(handleFinish);\n state.current.composite = composite1;\n }\n }\n };\n}\nvar useAnimatedNumberReaction = function(param, onValue) {\n var { value } = param;\n var onChange = (0, import_web.useEvent)(function(current) {\n onValue(current.value);\n });\n import_react.default.useEffect(function() {\n var id = value.getInstance().addListener(onChange);\n return function() {\n value.getInstance().removeListener(id);\n };\n }, [\n value,\n onChange\n ]);\n};\nvar useAnimatedNumberStyle = function(value, getStyle) {\n var instance = value.getInstance();\n var animatedStyle = getStyle(instance);\n var usesAnimatedNode = hasAnimatedNode(animatedStyle);\n var [current, setCurrent] = import_react.default.useState(value.getValue());\n import_react.default.useEffect(function() {\n if (usesAnimatedNode) return;\n var id = instance.addListener(function(param) {\n var { value: next } = param;\n setCurrent(next);\n });\n return function() {\n instance.removeListener(id);\n };\n }, [\n instance,\n usesAnimatedNode\n ]);\n return usesAnimatedNode ? animatedStyle : getStyle(current);\n};\nfunction hasAnimatedNode(value) {\n if (!value || typeof value !== \"object\") return false;\n if (typeof value.__getValue === \"function\") return true;\n if (Array.isArray(value)) return value.some(hasAnimatedNode);\n return Object.values(value).some(hasAnimatedNode);\n}\nvar useAnimatedNumbersStyle = function(vals, getStyle) {\n return getStyle(...vals.map(function(v) {\n return v.getInstance();\n }));\n};\nfunction createAnimations(animations, options) {\n var _options_useNativeDriver;\n var nativeDriver = (_options_useNativeDriver = options === null || options === void 0 ? void 0 : options.useNativeDriver) !== null && _options_useNativeDriver !== void 0 ? _options_useNativeDriver : isFabric;\n return {\n inputStyle: \"value\",\n outputStyle: \"inline\",\n avoidReRenders: true,\n animations,\n needsCustomComponent: true,\n View: AnimatedView,\n Text: AnimatedText,\n useAnimatedNumber,\n useAnimatedNumberReaction,\n useAnimatedNumberStyle,\n useAnimatedNumbersStyle,\n usePresence: import_use_presence.usePresence,\n ResetPresence: import_use_presence.ResetPresence,\n useAnimations: function(param) {\n var { props, onTransition, style, componentState, presence, stateRef, styleState, useStyleEmitter } = param;\n var _themeState_name;\n var isDisabled = import_constants.isWeb && componentState.unmounted === true;\n var isExiting = (presence === null || presence === void 0 ? void 0 : presence[0]) === false;\n var sendExitComplete = presence === null || presence === void 0 ? void 0 : presence[1];\n var onTransitionRef = import_react.default.useRef(onTransition);\n onTransitionRef.current = onTransition;\n var emit = function(phase, cause, finished) {\n var _onTransitionRef_current;\n (_onTransitionRef_current = onTransitionRef.current) === null || _onTransitionRef_current === void 0 ? void 0 : _onTransitionRef_current.call(onTransitionRef, phase === \"end\" ? {\n phase,\n cause,\n finished\n } : {\n phase,\n cause\n });\n };\n var _styleState_effectiveTransition;\n var effectiveTransition = (_styleState_effectiveTransition = styleState === null || styleState === void 0 ? void 0 : styleState.effectiveTransition) !== null && _styleState_effectiveTransition !== void 0 ? _styleState_effectiveTransition : props.transition;\n var [, themeState] = (0, import_internal_runtime.useThemeWithState)({});\n var isDark = (themeState === null || themeState === void 0 ? void 0 : themeState.scheme) === \"dark\" || (themeState === null || themeState === void 0 ? void 0 : (_themeState_name = themeState.name) === null || _themeState_name === void 0 ? void 0 : _themeState_name.startsWith(\"dark\"));\n var animateStyles = import_react.default.useRef({});\n var animatedTranforms = import_react.default.useRef([]);\n var animationsState = import_react.default.useRef(/* @__PURE__ */ new WeakMap());\n var pseudoActiveRef = import_react.default.useRef(false);\n var exitCycleIdRef = import_react.default.useRef(0);\n var exitCompletedRef = import_react.default.useRef(false);\n var wasExitingRef = import_react.default.useRef(false);\n var enterStartedRef = import_react.default.useRef(false);\n var exitStartedRef = import_react.default.useRef(false);\n var updateInFlightRef = import_react.default.useRef(false);\n var updateCycleIdRef = import_react.default.useRef(0);\n var prevStyleSigRef = import_react.default.useRef(null);\n var justStartedExiting = isExiting && !wasExitingRef.current;\n var justStoppedExiting = !isExiting && wasExitingRef.current;\n if (justStartedExiting) {\n exitCycleIdRef.current++;\n exitCompletedRef.current = false;\n }\n if (justStoppedExiting) {\n exitCycleIdRef.current++;\n }\n var isEntering = !!componentState.unmounted;\n var wasEnteringRef = import_react.default.useRef(isEntering);\n var justFinishedEntering = wasEnteringRef.current && !isEntering;\n import_react.default.useEffect(function() {\n wasEnteringRef.current = isEntering;\n });\n var args = [\n JSON.stringify(style),\n JSON.stringify(effectiveTransition),\n componentState,\n isExiting,\n !!onTransition,\n isDark,\n justFinishedEntering\n ];\n var res = import_react.default.useMemo(function() {\n var runners = [];\n var completions = [];\n var animationState = isExiting ? \"exit\" : isEntering || justFinishedEntering ? \"enter\" : \"default\";\n var resolved = (0, import_animation_helpers.forAnimationState)((0, import_animation_helpers.resolveTransition)(effectiveTransition, {\n animations\n }), animationState);\n var nonAnimatedStyle = {};\n var useNativeDriverForNode = nativeDriver && !hasAnimatedLayoutKey(style, isDark, resolved);\n var seenAnimateKeys = /* @__PURE__ */ new Set();\n var sawTransform = false;\n var transformCount = 0;\n for (var key in style) {\n var rawVal = style[key];\n var val = resolveDynamicValue(rawVal, isDark);\n if (val === void 0) continue;\n if (isDisabled) {\n continue;\n }\n if (animatedStyleKey[key] == null && !costlyToAnimateStyleKey[key] && !layoutStyleKey[key]) {\n nonAnimatedStyle[key] = val;\n continue;\n }\n if (key !== \"transform\" && !(0, import_animation_helpers.getTransitionForKey)(resolved, key)) {\n nonAnimatedStyle[key] = val;\n continue;\n }\n if (layoutStyleKey[key] && typeof val !== \"number\") {\n nonAnimatedStyle[key] = val;\n continue;\n }\n if (colorStyleKey[key] && !isAnimatableColor(val)) {\n nonAnimatedStyle[key] = val;\n continue;\n }\n if (key !== \"transform\") {\n animateStyles.current[key] = update(key, animateStyles.current[key], val);\n seenAnimateKeys.add(key);\n continue;\n }\n if (!val) continue;\n if (typeof val === \"string\") {\n console.warn(`Warning: Tamagui can't animate string transforms yet!`);\n continue;\n }\n sawTransform = true;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = val[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var transform = _step.value;\n var _animatedTranforms_current_index;\n if (!transform) continue;\n var index = transformCount++;\n var tkey = Object.keys(transform)[0];\n var currentTransform = (_animatedTranforms_current_index = animatedTranforms.current[index]) === null || _animatedTranforms_current_index === void 0 ? void 0 : _animatedTranforms_current_index[tkey];\n animatedTranforms.current[index] = {\n [tkey]: update(tkey, currentTransform, transform[tkey])\n };\n animatedTranforms.current = [\n ...animatedTranforms.current\n ];\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n if (!isExiting && !isDisabled && !pseudoActiveRef.current) {\n for (var k in animateStyles.current) {\n if (!seenAnimateKeys.has(k)) delete animateStyles.current[k];\n }\n if (!sawTransform) {\n if (animatedTranforms.current.length) animatedTranforms.current = [];\n } else if (animatedTranforms.current.length > transformCount) {\n animatedTranforms.current = animatedTranforms.current.slice(0, transformCount);\n }\n }\n var animatedTransformStyle = animatedTranforms.current.length > 0 ? {\n transform: animatedTranforms.current.map(function(r) {\n var _animationsState_current_get;\n var key2 = Object.keys(r)[0];\n var val2 = ((_animationsState_current_get = animationsState.current.get(r[key2])) === null || _animationsState_current_get === void 0 ? void 0 : _animationsState_current_get.interpolation) || r[key2];\n return {\n [key2]: val2\n };\n })\n } : {};\n var animatedStyle = {\n ...Object.fromEntries(Object.entries(animateStyles.current).map(function(param2) {\n var [k2, v] = param2;\n var _animationsState_current_get;\n return [\n k2,\n ((_animationsState_current_get = animationsState.current.get(v)) === null || _animationsState_current_get === void 0 ? void 0 : _animationsState_current_get.interpolation) || v\n ];\n })),\n ...animatedTransformStyle\n };\n return {\n runners,\n completions,\n style: [\n nonAnimatedStyle,\n animatedStyle\n ]\n };\n function update(key2, animated, valIn) {\n var isColorStyleKey = colorStyleKey[key2];\n var [val2, type] = isColorStyleKey ? [\n 0,\n void 0\n ] : getValue(valIn);\n var animateToValue = val2;\n var value = animated || new import_react_native.Animated.Value(val2);\n var curInterpolation = animationsState.current.get(value);\n var interpolateArgs;\n if (type) {\n var _curInterpolation_current;\n interpolateArgs = getInterpolated((_curInterpolation_current = curInterpolation === null || curInterpolation === void 0 ? void 0 : curInterpolation.current) !== null && _curInterpolation_current !== void 0 ? _curInterpolation_current : value[\"_value\"], val2, type);\n animationsState.current.set(value, {\n interpolation: value.interpolate(interpolateArgs),\n current: val2\n });\n }\n if (isColorStyleKey) {\n animateToValue = (curInterpolation === null || curInterpolation === void 0 ? void 0 : curInterpolation.animateToValue) ? 0 : 1;\n interpolateArgs = getColorInterpolated(\n curInterpolation === null || curInterpolation === void 0 ? void 0 : curInterpolation.current,\n // valIn is the next color\n valIn,\n animateToValue\n );\n animationsState.current.set(value, {\n current: valIn,\n interpolation: value.interpolate(interpolateArgs),\n animateToValue: (curInterpolation === null || curInterpolation === void 0 ? void 0 : curInterpolation.animateToValue) ? 0 : 1\n });\n }\n if (value) {\n var animationConfig = getAnimationConfig(key2, animations, effectiveTransition, animationState);\n var resolve;\n var promise = new Promise(function(res2) {\n resolve = res2;\n });\n completions.push(promise);\n runners.push(function() {\n value.stopAnimation();\n var { type: type2, delay, ...config } = animationConfig;\n var animation = import_react_native.Animated[type2 || \"spring\"](value, {\n toValue: animateToValue,\n ...config,\n useNativeDriver: useNativeDriverForNode\n });\n var animation2 = delay ? import_react_native.Animated.sequence([\n import_react_native.Animated.delay(delay),\n animation\n ]) : animation;\n animation2.start(function(param2) {\n var { finished } = param2;\n if (finished || isExiting) {\n resolve();\n }\n });\n });\n }\n if (process.env.NODE_ENV === \"development\") {\n if (props[\"debug\"] === \"verbose\") {\n console.info(\" \\u{1F4A0} animate\", key2, `from (${value[\"_value\"]}) to`, valIn, `(${val2})`, \"type\", type, \"interpolate\", interpolateArgs);\n }\n }\n return value;\n }\n }, args);\n import_react.default.useEffect(function() {\n wasExitingRef.current = isExiting;\n });\n (0, import_constants.useIsomorphicLayoutEffect)(function() {\n if (justStoppedExiting && exitStartedRef.current && !exitCompletedRef.current) {\n exitStartedRef.current = false;\n emit(\"end\", \"exit\", false);\n }\n }, [\n justStoppedExiting\n ]);\n (0, import_constants.useIsomorphicLayoutEffect)(function() {\n res.runners.forEach(function(r) {\n return r();\n });\n var cycleId = exitCycleIdRef.current;\n var cause = isExiting ? \"exit\" : isEntering || justFinishedEntering ? \"enter\" : \"update\";\n if (cause === \"exit\") {\n if (enterStartedRef.current) {\n enterStartedRef.current = false;\n emit(\"end\", \"enter\", false);\n }\n if (updateInFlightRef.current) {\n updateInFlightRef.current = false;\n updateCycleIdRef.current++;\n emit(\"end\", \"update\", false);\n }\n }\n if (cause === \"update\") {\n var sig = args[0];\n if (prevStyleSigRef.current === null || prevStyleSigRef.current === sig) {\n prevStyleSigRef.current = sig;\n return;\n }\n prevStyleSigRef.current = sig;\n if (res.completions.length === 0) return;\n if (updateInFlightRef.current) {\n emit(\"end\", \"update\", false);\n }\n updateInFlightRef.current = true;\n var uid = ++updateCycleIdRef.current;\n emit(\"start\", \"update\");\n Promise.all(res.completions).then(function() {\n if (uid !== updateCycleIdRef.current) return;\n updateInFlightRef.current = false;\n emit(\"end\", \"update\", true);\n });\n return;\n }\n prevStyleSigRef.current = args[0];\n if (res.completions.length === 0) {\n emit(\"start\", cause);\n emit(\"end\", cause, true);\n if (isExiting && !exitCompletedRef.current) {\n exitCompletedRef.current = true;\n sendExitComplete === null || sendExitComplete === void 0 ? void 0 : sendExitComplete();\n }\n return;\n }\n if (cause === \"enter\" && !enterStartedRef.current) {\n enterStartedRef.current = true;\n emit(\"start\", \"enter\");\n }\n if (cause === \"exit\" && !exitStartedRef.current) {\n exitStartedRef.current = true;\n emit(\"start\", \"exit\");\n }\n Promise.all(res.completions).then(function() {\n if (isExiting && cycleId !== exitCycleIdRef.current) return;\n if (isExiting && exitCompletedRef.current) return;\n if (isExiting) {\n if (exitStartedRef.current) {\n exitStartedRef.current = false;\n emit(\"end\", \"exit\", true);\n }\n exitCompletedRef.current = true;\n sendExitComplete === null || sendExitComplete === void 0 ? void 0 : sendExitComplete();\n } else if (enterStartedRef.current) {\n enterStartedRef.current = false;\n emit(\"end\", \"enter\", true);\n }\n });\n }, args);\n useStyleEmitter === null || useStyleEmitter === void 0 ? void 0 : useStyleEmitter(function(nextStyle, emittedTransition, pseudoActive) {\n pseudoActiveRef.current = pseudoActive === true;\n var runners = [];\n var seenAnimateKeys = /* @__PURE__ */ new Set();\n var transformCount = 0;\n var animatedShapeChanged = false;\n var emittedResolved = (0, import_animation_helpers.forAnimationState)((0, import_animation_helpers.resolveTransition)(emittedTransition !== null && emittedTransition !== void 0 ? emittedTransition : effectiveTransition, {\n animations\n }), \"default\");\n var useNativeDriverForNode = nativeDriver && !hasAnimatedLayoutKey(nextStyle, isDark, emittedResolved) && !Object.keys(animateStyles.current).some(function(key2) {\n return layoutStyleKey[key2];\n });\n for (var key in nextStyle) {\n var rawVal = nextStyle[key];\n var val = resolveDynamicValue(rawVal, isDark);\n if (val === void 0) continue;\n if (key === \"transform\" && Array.isArray(val)) {\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = val[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var transform = _step.value;\n var _animatedTranforms_current_index;\n if (!transform) continue;\n var index = transformCount++;\n var tkey = Object.keys(transform)[0];\n var currentTransform = (_animatedTranforms_current_index = animatedTranforms.current[index]) === null || _animatedTranforms_current_index === void 0 ? void 0 : _animatedTranforms_current_index[tkey];\n if (!currentTransform) animatedShapeChanged = true;\n animatedTranforms.current[index] = {\n [tkey]: update(tkey, currentTransform, transform[tkey])\n };\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n } else if (animatedStyleKey[key] != null || costlyToAnimateStyleKey[key] || layoutStyleKey[key]) {\n if (layoutStyleKey[key] && typeof val !== \"number\") continue;\n if (colorStyleKey[key] && !isAnimatableColor(val)) continue;\n if (!animateStyles.current[key]) animatedShapeChanged = true;\n animateStyles.current[key] = update(key, animateStyles.current[key], val);\n seenAnimateKeys.add(key);\n }\n }\n for (var key1 in animateStyles.current) {\n if (!seenAnimateKeys.has(key1)) {\n delete animateStyles.current[key1];\n animatedShapeChanged = true;\n }\n }\n if (animatedTranforms.current.length > transformCount) {\n animatedTranforms.current = animatedTranforms.current.slice(0, transformCount);\n animatedShapeChanged = true;\n }\n runners.forEach(function(r) {\n return r();\n });\n if (animatedShapeChanged && stateRef.current.nextState) {\n var _stateRef_current_baseSetStateShallow, _stateRef_current;\n (_stateRef_current_baseSetStateShallow = (_stateRef_current = stateRef.current).baseSetStateShallow) === null || _stateRef_current_baseSetStateShallow === void 0 ? void 0 : _stateRef_current_baseSetStateShallow.call(_stateRef_current, stateRef.current.nextState);\n }\n function update(key2, animated, valIn) {\n var isColor = colorStyleKey[key2];\n var [numVal, type] = isColor ? [\n 0,\n void 0\n ] : getValue(valIn);\n var animateToValue = numVal;\n var value = animated || new import_react_native.Animated.Value(numVal);\n var curInterpolation = animationsState.current.get(value);\n if (type) {\n var _curInterpolation_current;\n animationsState.current.set(value, {\n interpolation: value.interpolate(getInterpolated((_curInterpolation_current = curInterpolation === null || curInterpolation === void 0 ? void 0 : curInterpolation.current) !== null && _curInterpolation_current !== void 0 ? _curInterpolation_current : value[\"_value\"], numVal, type)),\n current: numVal\n });\n }\n if (isColor) {\n animateToValue = (curInterpolation === null || curInterpolation === void 0 ? void 0 : curInterpolation.animateToValue) ? 0 : 1;\n animationsState.current.set(value, {\n current: valIn,\n interpolation: value.interpolate(getColorInterpolated(curInterpolation === null || curInterpolation === void 0 ? void 0 : curInterpolation.current, valIn, animateToValue)),\n animateToValue: (curInterpolation === null || curInterpolation === void 0 ? void 0 : curInterpolation.animateToValue) ? 0 : 1\n });\n }\n var animationConfig = getAnimationConfig(key2, animations, emittedTransition !== null && emittedTransition !== void 0 ? emittedTransition : effectiveTransition, \"default\");\n runners.push(function() {\n value.stopAnimation();\n var { type: type2, delay, ...config } = animationConfig;\n var anim = import_react_native.Animated[type2 || \"spring\"](value, {\n toValue: animateToValue,\n ...config,\n useNativeDriver: useNativeDriverForNode\n });\n (delay ? import_react_native.Animated.sequence([\n import_react_native.Animated.delay(delay),\n anim\n ]) : anim).start();\n });\n return value;\n }\n });\n if (process.env.NODE_ENV === \"development\") {\n if (props[\"debug\"] === \"verbose\") {\n console.info(`Animated`, {\n response: res,\n inputStyle: style,\n isExiting\n });\n }\n }\n return res;\n }\n };\n}\nfunction getColorInterpolated(currentColor, nextColor, animateToValue) {\n var inputRange = [\n 0,\n 1\n ];\n var outputRange = [\n currentColor ? currentColor : nextColor,\n nextColor\n ];\n if (animateToValue === 0) {\n outputRange.reverse();\n }\n return {\n inputRange,\n outputRange\n };\n}\nfunction getInterpolated(current, next) {\n var postfix = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : \"deg\";\n if (next === current) {\n current = next - 1e-9;\n }\n var inputRange = [\n current,\n next\n ];\n var outputRange = [\n `${current}${postfix}`,\n `${next}${postfix}`\n ];\n if (next < current) {\n inputRange.reverse();\n outputRange.reverse();\n }\n return {\n inputRange,\n outputRange\n };\n}\nfunction entryToRN(entry) {\n var extra = entry.timing.kind === \"spring\" ? entry.timing.extra : void 0;\n if (entry.timing.kind === \"spring\") {\n return {\n type: \"spring\",\n stiffness: entry.timing.stiffness,\n damping: entry.timing.damping,\n mass: entry.timing.mass,\n ...typeof (extra === null || extra === void 0 ? void 0 : extra.velocity) === \"number\" ? {\n velocity: extra.velocity\n } : null,\n ...typeof (extra === null || extra === void 0 ? void 0 : extra.overshootClamping) === \"boolean\" ? {\n overshootClamping: extra.overshootClamping\n } : null,\n ...entry.delayMs ? {\n delay: entry.delayMs\n } : null\n };\n }\n var bezier = (0, import_animation_helpers.easingToBezier)(entry.timing.easing);\n return {\n type: \"timing\",\n duration: entry.timing.durationMs,\n // `linear()` and `steps()` have no bezier equivalent; RN's default easing\n // is the honest answer rather than a curve we made up\n ...bezier ? {\n easing: import_react_native.Easing.bezier(bezier[0], bezier[1], bezier[2], bezier[3])\n } : null,\n ...entry.delayMs ? {\n delay: entry.delayMs\n } : null\n };\n}\nvar snapConfig = {\n type: \"timing\",\n duration: 0\n};\nfunction getAnimationConfig(key, animations, transition) {\n var animationState = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : \"default\";\n var resolved = (0, import_animation_helpers.forAnimationState)((0, import_animation_helpers.resolveTransition)(transition, {\n animations\n }), animationState);\n var entry = (0, import_animation_helpers.getTransitionForKey)(resolved, key);\n return entry ? entryToRN(entry) : snapConfig;\n}\nfunction getValue(input) {\n var isColor = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false;\n if (typeof input !== \"string\") {\n return [\n input\n ];\n }\n var _input_match;\n var [_, number, after] = (_input_match = input.match(/(-?(?:\\d+\\.?\\d*|\\.\\d+))(deg|%|px)?/)) !== null && _input_match !== void 0 ? _input_match : [];\n return [\n +number,\n after\n ];\n}\n//# sourceMappingURL=createAnimations.native.js.map\n"],"mappings":"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"}
1
+ {"version":3,"file":"createAnimations.native.js","names":[],"sources":["cjs/createAnimations.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar createAnimations_native_exports = {};\n__export(createAnimations_native_exports, {\n AnimatedText: () => AnimatedText,\n AnimatedView: () => AnimatedView,\n createAnimations: () => createAnimations,\n useAnimatedNumber: () => useAnimatedNumber,\n useAnimatedNumberReaction: () => useAnimatedNumberReaction,\n useAnimatedNumberStyle: () => useAnimatedNumberStyle,\n useAnimatedNumbersStyle: () => useAnimatedNumbersStyle\n});\nmodule.exports = __toCommonJS(createAnimations_native_exports);\nvar import_animation_helpers = require(\"@tamagui/animation-helpers\");\nvar import_constants = require(\"@tamagui/constants\");\nvar import_use_presence = require(\"@tamagui/use-presence\");\nvar import_web = require(\"@tamagui/web\");\nvar import_internal_runtime = require(\"@tamagui/web/internal-runtime\");\nvar import_react = __toESM(require(\"react\"), 1);\nvar import_react_native = require(\"react-native\");\nvar isFabric = !import_constants.isWeb && typeof global !== \"undefined\" && !!global.__nativeFabricUIManager;\nvar resolveDynamicValue = function(value, isDark) {\n if (value && typeof value === \"object\" && \"dynamic\" in value) {\n var dynamicValue = isDark ? value.dynamic.dark : value.dynamic.light;\n return dynamicValue;\n }\n return value;\n};\nvar animatedStyleKey = {\n transform: true,\n opacity: true\n};\nvar colorStyleKey = {\n backgroundColor: true,\n color: true,\n borderColor: true,\n borderLeftColor: true,\n borderRightColor: true,\n borderTopColor: true,\n borderBottomColor: true\n};\nvar layoutStyleKey = {\n height: true,\n width: true,\n minHeight: true,\n maxHeight: true,\n minWidth: true,\n maxWidth: true\n};\nvar textMetricStyleKey = {\n fontSize: true,\n lineHeight: true\n};\nvar jsDriverStyleKey = {\n ...layoutStyleKey,\n ...textMetricStyleKey\n};\nfunction hasAnimatedLayoutKey(style, isDark, resolved) {\n for (var key in layoutStyleKey) {\n if (!(0, import_animation_helpers.getTransitionForKey)(resolved, key)) continue;\n if (typeof resolveDynamicValue(style[key], isDark) === \"number\") return true;\n }\n return false;\n}\nvar getLeadingRatio = function(metrics) {\n var ratio = metrics === null || metrics === void 0 ? void 0 : metrics.lineHeight;\n return typeof ratio === \"number\" && Number.isFinite(ratio) && ratio >= 0 ? ratio : void 0;\n};\nvar paintsLeadingProduct = function(style, ratio) {\n return ratio !== void 0 && typeof style.fontSize === \"number\" && typeof style.lineHeight === \"number\";\n};\nvar inheritedFontSizeNode = function(style, ratio, inheritedText) {\n return ratio !== void 0 && typeof style.fontSize !== \"number\" && (inheritedText === null || inheritedText === void 0 ? void 0 : inheritedText.driver) === \"react-native\" ? inheritedText.fontSize : void 0;\n};\nfunction isAnimatableColor(value) {\n return typeof value === \"string\" && (0, import_react_native.processColor)(value) != null;\n}\nvar costlyToAnimateStyleKey = {\n borderRadius: true,\n borderTopLeftRadius: true,\n borderTopRightRadius: true,\n borderBottomLeftRadius: true,\n borderBottomRightRadius: true,\n borderWidth: true,\n borderLeftWidth: true,\n borderRightWidth: true,\n borderTopWidth: true,\n borderBottomWidth: true,\n ...colorStyleKey\n};\nvar AnimatedView = import_react_native.Animated.View;\nvar AnimatedText = import_react_native.Animated.Text;\nvar animatedTextInput;\nfunction useAnimatedNumber(initial) {\n var state = import_react.default.useRef(null);\n if (!state.current) {\n state.current = {\n composite: null,\n val: new import_react_native.Animated.Value(initial),\n strategy: {\n type: \"spring\"\n }\n };\n }\n return {\n getInstance() {\n return state.current.val;\n },\n getValue() {\n return state.current.val[\"_value\"];\n },\n stop() {\n var _state_current_composite;\n (_state_current_composite = state.current.composite) === null || _state_current_composite === void 0 ? void 0 : _state_current_composite.stop();\n state.current.composite = null;\n },\n setValue(next) {\n var { type, ...config } = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : {\n type: \"spring\"\n }, onFinish = arguments.length > 2 ? arguments[2] : void 0;\n var val = state.current.val;\n var handleFinish = onFinish ? function(param) {\n var { finished } = param;\n return finished ? onFinish() : null;\n } : void 0;\n if (type === \"direct\") {\n var _state_current_composite;\n (_state_current_composite = state.current.composite) === null || _state_current_composite === void 0 ? void 0 : _state_current_composite.stop();\n state.current.composite = null;\n val.setValue(next);\n onFinish === null || onFinish === void 0 ? void 0 : onFinish();\n } else if (type === \"spring\") {\n var _state_current_composite1;\n (_state_current_composite1 = state.current.composite) === null || _state_current_composite1 === void 0 ? void 0 : _state_current_composite1.stop();\n var composite = import_react_native.Animated.spring(val, {\n ...config,\n toValue: next,\n useNativeDriver: isFabric\n });\n composite.start(handleFinish);\n state.current.composite = composite;\n } else {\n var _state_current_composite2;\n (_state_current_composite2 = state.current.composite) === null || _state_current_composite2 === void 0 ? void 0 : _state_current_composite2.stop();\n var composite1 = import_react_native.Animated.timing(val, {\n ...config,\n toValue: next,\n useNativeDriver: isFabric\n });\n composite1.start(handleFinish);\n state.current.composite = composite1;\n }\n }\n };\n}\nvar useAnimatedNumberReaction = function(param, onValue) {\n var { value } = param;\n var onChange = (0, import_web.useEvent)(function(current) {\n onValue(current.value);\n });\n import_react.default.useEffect(function() {\n var id = value.getInstance().addListener(onChange);\n return function() {\n value.getInstance().removeListener(id);\n };\n }, [\n value,\n onChange\n ]);\n};\nvar useAnimatedNumberStyle = function(value, getStyle) {\n var instance = value.getInstance();\n var animatedStyle = getStyle(instance);\n var usesAnimatedNode = hasAnimatedNode(animatedStyle);\n var [current, setCurrent] = import_react.default.useState(value.getValue());\n import_react.default.useEffect(function() {\n if (usesAnimatedNode) return;\n var id = instance.addListener(function(param) {\n var { value: next } = param;\n setCurrent(next);\n });\n return function() {\n instance.removeListener(id);\n };\n }, [\n instance,\n usesAnimatedNode\n ]);\n return usesAnimatedNode ? animatedStyle : getStyle(current);\n};\nfunction hasAnimatedNode(value) {\n if (!value || typeof value !== \"object\") return false;\n if (typeof value.__getValue === \"function\") return true;\n if (Array.isArray(value)) return value.some(hasAnimatedNode);\n return Object.values(value).some(hasAnimatedNode);\n}\nvar useAnimatedNumbersStyle = function(vals, getStyle) {\n return getStyle(...vals.map(function(v) {\n return v.getInstance();\n }));\n};\nfunction createAnimations(animations, options) {\n var _options_useNativeDriver;\n var nativeDriver = (_options_useNativeDriver = options === null || options === void 0 ? void 0 : options.useNativeDriver) !== null && _options_useNativeDriver !== void 0 ? _options_useNativeDriver : isFabric;\n return {\n inputStyle: \"value\",\n outputStyle: \"inline\",\n avoidReRenders: true,\n animations,\n needsCustomComponent: true,\n View: AnimatedView,\n Text: AnimatedText,\n useAnimatedNumber,\n useAnimatedNumberReaction,\n useAnimatedNumberStyle,\n useAnimatedNumbersStyle,\n usePresence: import_use_presence.usePresence,\n ResetPresence: import_use_presence.ResetPresence,\n // binds a descendant that has no font size of its own to the ancestor's\n // animated one. no clock here: the font size node is the ancestor's, and a\n // ratio leading is a multiplication of it, so both land on the same frame.\n useTextMetrics: function(param) {\n var { inheritedText, lineHeight } = param;\n var node = (inheritedText === null || inheritedText === void 0 ? void 0 : inheritedText.driver) === \"react-native\" ? inheritedText.fontSize : null;\n var ratio = typeof lineHeight === \"number\" ? lineHeight : null;\n var style = import_react.default.useMemo(function() {\n return node ? ratio === null ? {\n fontSize: node\n } : {\n fontSize: node,\n lineHeight: import_react_native.Animated.multiply(node, ratio)\n } : null;\n }, [\n node,\n ratio\n ]);\n var textChannel = inheritedText !== null && inheritedText !== void 0 ? inheritedText : null;\n if (!style) return {\n style: null,\n textChannel\n };\n animatedTextInput || (animatedTextInput = import_react_native.Animated.createAnimatedComponent(import_react_native.TextInput));\n return {\n style,\n textChannel,\n Text: AnimatedText,\n TextInput: animatedTextInput\n };\n },\n useAnimations: function(param) {\n var { props, onTransition, style, componentState, presence, stateRef, styleState, useStyleEmitter, inheritedText } = param;\n var _themeState_name;\n var isDisabled = import_constants.isWeb && componentState.unmounted === true;\n var isExiting = (presence === null || presence === void 0 ? void 0 : presence[0]) === false;\n var sendExitComplete = presence === null || presence === void 0 ? void 0 : presence[1];\n var onTransitionRef = import_react.default.useRef(onTransition);\n onTransitionRef.current = onTransition;\n var emit = function(phase, cause, finished) {\n var _onTransitionRef_current;\n (_onTransitionRef_current = onTransitionRef.current) === null || _onTransitionRef_current === void 0 ? void 0 : _onTransitionRef_current.call(onTransitionRef, phase === \"end\" ? {\n phase,\n cause,\n finished\n } : {\n phase,\n cause\n });\n };\n var _styleState_effectiveTransition;\n var effectiveTransition = (_styleState_effectiveTransition = styleState === null || styleState === void 0 ? void 0 : styleState.effectiveTransition) !== null && _styleState_effectiveTransition !== void 0 ? _styleState_effectiveTransition : props.transition;\n var [, themeState] = (0, import_internal_runtime.useThemeWithState)({});\n var isDark = (themeState === null || themeState === void 0 ? void 0 : themeState.scheme) === \"dark\" || (themeState === null || themeState === void 0 ? void 0 : (_themeState_name = themeState.name) === null || _themeState_name === void 0 ? void 0 : _themeState_name.startsWith(\"dark\"));\n var animateStyles = import_react.default.useRef({});\n var leadingRatioValue = import_react.default.useRef(null);\n var leadingRatioRef = import_react.default.useRef(void 0);\n var paintsDerivedLeading = import_react.default.useRef(false);\n var textChannelRef = import_react.default.useRef(null);\n leadingRatioRef.current = getLeadingRatio(styleState === null || styleState === void 0 ? void 0 : styleState.nativeTextMetrics);\n var paintedTextRef = import_react.default.useRef({});\n var movesTextValue = function(key, target) {\n if (typeof target !== \"number\") return false;\n var node = animateStyles.current[key];\n var last = node ? node[\"_value\"] : paintedTextRef.current[key];\n return last !== void 0 && last !== target;\n };\n var movesLeadingRatio = function(ratio) {\n if (ratio === void 0) return false;\n var node = leadingRatioValue.current;\n var last = node ? node[\"_value\"] : paintedTextRef.current.ratio;\n return last !== void 0 && last !== ratio;\n };\n var fontSizeNode = import_react.default.useRef(null);\n var animatedValueFor = function(key) {\n var painted = animateStyles.current[key];\n if (painted) return painted;\n if (key === \"fontSize\" && fontSizeNode.current) return fontSizeNode.current;\n if (textMetricStyleKey[key]) return new import_react_native.Animated.Value(paintedTextRef.current[key]);\n return void 0;\n };\n var leadingRatioValueFrom = function() {\n var _leadingRatioValue_current;\n return (_leadingRatioValue_current = leadingRatioValue.current) !== null && _leadingRatioValue_current !== void 0 ? _leadingRatioValue_current : new import_react_native.Animated.Value(paintedTextRef.current.ratio);\n };\n var animatedTranforms = import_react.default.useRef([]);\n var animationsState = import_react.default.useRef(/* @__PURE__ */ new WeakMap());\n var pseudoActiveRef = import_react.default.useRef(false);\n var exitCycleIdRef = import_react.default.useRef(0);\n var exitCompletedRef = import_react.default.useRef(false);\n var wasExitingRef = import_react.default.useRef(false);\n var enterStartedRef = import_react.default.useRef(false);\n var exitStartedRef = import_react.default.useRef(false);\n var updateInFlightRef = import_react.default.useRef(false);\n var updateCycleIdRef = import_react.default.useRef(0);\n var prevStyleSigRef = import_react.default.useRef(null);\n var justStartedExiting = isExiting && !wasExitingRef.current;\n var justStoppedExiting = !isExiting && wasExitingRef.current;\n if (justStartedExiting) {\n exitCycleIdRef.current++;\n exitCompletedRef.current = false;\n }\n if (justStoppedExiting) {\n exitCycleIdRef.current++;\n }\n var isEntering = !!componentState.unmounted;\n var wasEnteringRef = import_react.default.useRef(isEntering);\n var justFinishedEntering = wasEnteringRef.current && !isEntering;\n import_react.default.useEffect(function() {\n wasEnteringRef.current = isEntering;\n });\n var args = [\n JSON.stringify(style),\n JSON.stringify(effectiveTransition),\n componentState,\n isExiting,\n !!onTransition,\n isDark,\n justFinishedEntering,\n leadingRatioRef.current,\n inheritedText\n ];\n var res = import_react.default.useMemo(function() {\n var _textChannelRef_current;\n var runners = [];\n var completions = [];\n var animationState = isExiting ? \"exit\" : isEntering || justFinishedEntering ? \"enter\" : \"default\";\n var resolved = (0, import_animation_helpers.forAnimationState)((0, import_animation_helpers.resolveTransition)(effectiveTransition, {\n animations\n }), animationState);\n var nonAnimatedStyle = {};\n var paintedRatio = leadingRatioRef.current;\n var paintsProduct = paintsLeadingProduct(style, paintedRatio);\n var movesFontSize = movesTextValue(\"fontSize\", style.fontSize);\n var movesLeading = paintsProduct ? movesLeadingRatio(paintedRatio) : movesTextValue(\"lineHeight\", style.lineHeight);\n if (!isExiting && !isDisabled && !pseudoActiveRef.current) {\n if (!movesFontSize) delete animateStyles.current.fontSize;\n if (!movesLeading) delete animateStyles.current.lineHeight;\n }\n if (isDisabled || typeof style.fontSize !== \"number\" || !(0, import_animation_helpers.getTransitionForKey)(resolved, \"fontSize\")) {\n fontSizeNode.current = null;\n } else if (!fontSizeNode.current) {\n fontSizeNode.current = new import_react_native.Animated.Value(style.fontSize);\n }\n var seenAnimateKeys = /* @__PURE__ */ new Set();\n var sawTransform = false;\n var transformCount = 0;\n var derivesLeading = !isDisabled && paintsProduct && (movesFontSize || movesLeading) && (!!(0, import_animation_helpers.getTransitionForKey)(resolved, \"fontSize\") || !!(0, import_animation_helpers.getTransitionForKey)(resolved, \"lineHeight\"));\n var inheritedFontSize = isDisabled ? void 0 : inheritedFontSizeNode(style, paintedRatio, inheritedText);\n var useNativeDriverForNode = nativeDriver && !hasAnimatedLayoutKey(style, isDark, resolved) && !movesFontSize && !movesLeading && !inheritedFontSize && !Object.keys(animateStyles.current).some(function(key2) {\n return jsDriverStyleKey[key2];\n });\n for (var key in style) {\n var rawVal = style[key];\n var val = resolveDynamicValue(rawVal, isDark);\n if (val === void 0) continue;\n if (isDisabled) {\n continue;\n }\n if ((derivesLeading || inheritedFontSize) && (key === \"fontSize\" || key === \"lineHeight\")) {\n if (key === \"fontSize\" && derivesLeading && !movesFontSize) {\n nonAnimatedStyle[key] = val;\n }\n continue;\n }\n if (textMetricStyleKey[key] && !(key === \"fontSize\" ? movesFontSize : movesLeading)) {\n nonAnimatedStyle[key] = val;\n continue;\n }\n if (animatedStyleKey[key] == null && !costlyToAnimateStyleKey[key] && !jsDriverStyleKey[key]) {\n nonAnimatedStyle[key] = val;\n continue;\n }\n if (key !== \"transform\" && !(0, import_animation_helpers.getTransitionForKey)(resolved, key)) {\n nonAnimatedStyle[key] = val;\n continue;\n }\n if (jsDriverStyleKey[key] && typeof val !== \"number\") {\n nonAnimatedStyle[key] = val;\n continue;\n }\n if (colorStyleKey[key] && !isAnimatableColor(val)) {\n nonAnimatedStyle[key] = val;\n continue;\n }\n if (key !== \"transform\") {\n animateStyles.current[key] = update(key, animatedValueFor(key), val);\n seenAnimateKeys.add(key);\n continue;\n }\n if (!val) continue;\n if (typeof val === \"string\") {\n console.warn(`Warning: Tamagui can't animate string transforms yet!`);\n continue;\n }\n sawTransform = true;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = val[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var transform = _step.value;\n var _animatedTranforms_current_index;\n if (!transform) continue;\n var index = transformCount++;\n var tkey = Object.keys(transform)[0];\n var currentTransform = (_animatedTranforms_current_index = animatedTranforms.current[index]) === null || _animatedTranforms_current_index === void 0 ? void 0 : _animatedTranforms_current_index[tkey];\n animatedTranforms.current[index] = {\n [tkey]: update(tkey, currentTransform, transform[tkey])\n };\n animatedTranforms.current = [\n ...animatedTranforms.current\n ];\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n }\n var ratioFactor = function() {\n if (!movesLeading) {\n leadingRatioValue.current = null;\n return paintedRatio;\n }\n leadingRatioValue.current = update(\"lineHeight\", leadingRatioValueFrom(), paintedRatio);\n return leadingRatioValue.current;\n };\n var derivedLeading;\n if (derivesLeading) {\n var fontSizeFactor = style.fontSize;\n if (movesFontSize) {\n fontSizeFactor = update(\"fontSize\", animatedValueFor(\"fontSize\"), style.fontSize);\n animateStyles.current.fontSize = fontSizeFactor;\n seenAnimateKeys.add(\"fontSize\");\n }\n derivedLeading = import_react_native.Animated.multiply(fontSizeFactor, ratioFactor());\n } else if (inheritedFontSize) {\n derivedLeading = import_react_native.Animated.multiply(inheritedFontSize, ratioFactor());\n } else if (!isDisabled) {\n leadingRatioValue.current = null;\n }\n paintsDerivedLeading.current = !!derivedLeading;\n var ownFontSizeNode = fontSizeNode.current;\n var textChannel = ownFontSizeNode ? ((_textChannelRef_current = textChannelRef.current) === null || _textChannelRef_current === void 0 ? void 0 : _textChannelRef_current.fontSize) === ownFontSizeNode ? textChannelRef.current : {\n fontSize: ownFontSizeNode,\n driver: \"react-native\"\n } : typeof style.fontSize === \"number\" ? null : inheritedText !== null && inheritedText !== void 0 ? inheritedText : null;\n textChannelRef.current = textChannel;\n if (!isExiting && !isDisabled && !pseudoActiveRef.current) {\n for (var k in animateStyles.current) {\n if (!seenAnimateKeys.has(k)) delete animateStyles.current[k];\n }\n if (!sawTransform) {\n if (animatedTranforms.current.length) animatedTranforms.current = [];\n } else if (animatedTranforms.current.length > transformCount) {\n animatedTranforms.current = animatedTranforms.current.slice(0, transformCount);\n }\n }\n var animatedTransformStyle = animatedTranforms.current.length > 0 ? {\n transform: animatedTranforms.current.map(function(r) {\n var _animationsState_current_get;\n var key2 = Object.keys(r)[0];\n var val2 = ((_animationsState_current_get = animationsState.current.get(r[key2])) === null || _animationsState_current_get === void 0 ? void 0 : _animationsState_current_get.interpolation) || r[key2];\n return {\n [key2]: val2\n };\n })\n } : {};\n var animatedStyle = {\n ...Object.fromEntries(Object.entries(animateStyles.current).map(function(param2) {\n var [k2, v] = param2;\n var _animationsState_current_get;\n return [\n k2,\n ((_animationsState_current_get = animationsState.current.get(v)) === null || _animationsState_current_get === void 0 ? void 0 : _animationsState_current_get.interpolation) || v\n ];\n })),\n ...derivedLeading ? {\n lineHeight: derivedLeading\n } : null,\n ...animatedTransformStyle\n };\n if (!isDisabled) {\n paintedTextRef.current = {\n fontSize: style.fontSize,\n lineHeight: style.lineHeight,\n ratio: paintedRatio\n };\n }\n return {\n runners,\n completions,\n textChannel,\n style: [\n nonAnimatedStyle,\n animatedStyle\n ]\n };\n function update(key2, animated, valIn) {\n var isColorStyleKey = colorStyleKey[key2];\n var [val2, type] = isColorStyleKey ? [\n 0,\n void 0\n ] : getValue(valIn);\n var animateToValue = val2;\n var value = animated || new import_react_native.Animated.Value(val2);\n var curInterpolation = animationsState.current.get(value);\n var interpolateArgs;\n if (type) {\n var _curInterpolation_current;\n interpolateArgs = getInterpolated((_curInterpolation_current = curInterpolation === null || curInterpolation === void 0 ? void 0 : curInterpolation.current) !== null && _curInterpolation_current !== void 0 ? _curInterpolation_current : value[\"_value\"], val2, type);\n animationsState.current.set(value, {\n interpolation: value.interpolate(interpolateArgs),\n current: val2\n });\n }\n if (isColorStyleKey) {\n animateToValue = (curInterpolation === null || curInterpolation === void 0 ? void 0 : curInterpolation.animateToValue) ? 0 : 1;\n interpolateArgs = getColorInterpolated(\n curInterpolation === null || curInterpolation === void 0 ? void 0 : curInterpolation.current,\n // valIn is the next color\n valIn,\n animateToValue\n );\n animationsState.current.set(value, {\n current: valIn,\n interpolation: value.interpolate(interpolateArgs),\n animateToValue: (curInterpolation === null || curInterpolation === void 0 ? void 0 : curInterpolation.animateToValue) ? 0 : 1\n });\n }\n if (value) {\n var animationConfig = getAnimationConfig(key2, animations, effectiveTransition, animationState);\n var resolve;\n var promise = new Promise(function(res2) {\n resolve = res2;\n });\n completions.push(promise);\n runners.push(function() {\n value.stopAnimation();\n var { type: type2, delay, ...config } = animationConfig;\n var animation = import_react_native.Animated[type2 || \"spring\"](value, {\n toValue: animateToValue,\n ...config,\n useNativeDriver: useNativeDriverForNode\n });\n var animation2 = delay ? import_react_native.Animated.sequence([\n import_react_native.Animated.delay(delay),\n animation\n ]) : animation;\n animation2.start(function(param2) {\n var { finished } = param2;\n if (finished || isExiting) {\n resolve();\n }\n });\n });\n }\n if (process.env.NODE_ENV === \"development\") {\n if (props[\"debug\"] === \"verbose\") {\n console.info(\" \\u{1F4A0} animate\", key2, `from (${value[\"_value\"]}) to`, valIn, `(${val2})`, \"type\", type, \"interpolate\", interpolateArgs);\n }\n }\n return value;\n }\n }, args);\n import_react.default.useEffect(function() {\n wasExitingRef.current = isExiting;\n });\n (0, import_constants.useIsomorphicLayoutEffect)(function() {\n if (justStoppedExiting && exitStartedRef.current && !exitCompletedRef.current) {\n exitStartedRef.current = false;\n emit(\"end\", \"exit\", false);\n }\n }, [\n justStoppedExiting\n ]);\n (0, import_constants.useIsomorphicLayoutEffect)(function() {\n res.runners.forEach(function(r) {\n return r();\n });\n var cycleId = exitCycleIdRef.current;\n var cause = isExiting ? \"exit\" : isEntering || justFinishedEntering ? \"enter\" : \"update\";\n if (cause === \"exit\") {\n if (enterStartedRef.current) {\n enterStartedRef.current = false;\n emit(\"end\", \"enter\", false);\n }\n if (updateInFlightRef.current) {\n updateInFlightRef.current = false;\n updateCycleIdRef.current++;\n emit(\"end\", \"update\", false);\n }\n }\n if (cause === \"update\") {\n var sig = args[0];\n if (prevStyleSigRef.current === null || prevStyleSigRef.current === sig) {\n prevStyleSigRef.current = sig;\n return;\n }\n prevStyleSigRef.current = sig;\n if (res.completions.length === 0) return;\n if (updateInFlightRef.current) {\n emit(\"end\", \"update\", false);\n }\n updateInFlightRef.current = true;\n var uid = ++updateCycleIdRef.current;\n emit(\"start\", \"update\");\n Promise.all(res.completions).then(function() {\n if (uid !== updateCycleIdRef.current) return;\n updateInFlightRef.current = false;\n emit(\"end\", \"update\", true);\n });\n return;\n }\n prevStyleSigRef.current = args[0];\n if (res.completions.length === 0) {\n emit(\"start\", cause);\n emit(\"end\", cause, true);\n if (isExiting && !exitCompletedRef.current) {\n exitCompletedRef.current = true;\n sendExitComplete === null || sendExitComplete === void 0 ? void 0 : sendExitComplete();\n }\n return;\n }\n if (cause === \"enter\" && !enterStartedRef.current) {\n enterStartedRef.current = true;\n emit(\"start\", \"enter\");\n }\n if (cause === \"exit\" && !exitStartedRef.current) {\n exitStartedRef.current = true;\n emit(\"start\", \"exit\");\n }\n Promise.all(res.completions).then(function() {\n if (isExiting && cycleId !== exitCycleIdRef.current) return;\n if (isExiting && exitCompletedRef.current) return;\n if (isExiting) {\n if (exitStartedRef.current) {\n exitStartedRef.current = false;\n emit(\"end\", \"exit\", true);\n }\n exitCompletedRef.current = true;\n sendExitComplete === null || sendExitComplete === void 0 ? void 0 : sendExitComplete();\n } else if (enterStartedRef.current) {\n enterStartedRef.current = false;\n emit(\"end\", \"enter\", true);\n }\n });\n }, args);\n var onEmittedStyle = function(nextStyle, emittedTransition, pseudoActive, nextMetrics) {\n pseudoActiveRef.current = pseudoActive === true;\n var runners = [];\n var seenAnimateKeys = /* @__PURE__ */ new Set();\n var transformCount = 0;\n var animatedShapeChanged = false;\n var emittedResolved = (0, import_animation_helpers.forAnimationState)((0, import_animation_helpers.resolveTransition)(emittedTransition !== null && emittedTransition !== void 0 ? emittedTransition : effectiveTransition, {\n animations\n }), \"default\");\n var emittedRatio = getLeadingRatio(nextMetrics);\n var emitterPaintsProduct = paintsLeadingProduct(nextStyle, emittedRatio);\n var emitterMovesFontSize = movesTextValue(\"fontSize\", nextStyle.fontSize);\n var emitterMovesLeading = emitterPaintsProduct ? movesLeadingRatio(emittedRatio) : movesTextValue(\"lineHeight\", nextStyle.lineHeight);\n var useNativeDriverForNode = nativeDriver && !hasAnimatedLayoutKey(nextStyle, isDark, emittedResolved) && !emitterMovesFontSize && !emitterMovesLeading && !inheritedFontSizeNode(nextStyle, emittedRatio, inheritedText) && !Object.keys(animateStyles.current).some(function(key2) {\n return jsDriverStyleKey[key2];\n });\n var emitterDerivesLeading = emitterPaintsProduct && (emitterMovesFontSize || emitterMovesLeading) && (!!(0, import_animation_helpers.getTransitionForKey)(emittedResolved, \"fontSize\") || !!(0, import_animation_helpers.getTransitionForKey)(emittedResolved, \"lineHeight\"));\n for (var key in nextStyle) {\n var rawVal = nextStyle[key];\n var val = resolveDynamicValue(rawVal, isDark);\n if (val === void 0) continue;\n if (emitterDerivesLeading && (key === \"fontSize\" || key === \"lineHeight\")) {\n continue;\n }\n if (textMetricStyleKey[key] && !(key === \"fontSize\" ? emitterMovesFontSize : emitterMovesLeading)) {\n continue;\n }\n if (key === \"transform\" && Array.isArray(val)) {\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = val[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var transform = _step.value;\n var _animatedTranforms_current_index;\n if (!transform) continue;\n var index = transformCount++;\n var tkey = Object.keys(transform)[0];\n var currentTransform = (_animatedTranforms_current_index = animatedTranforms.current[index]) === null || _animatedTranforms_current_index === void 0 ? void 0 : _animatedTranforms_current_index[tkey];\n if (!currentTransform) animatedShapeChanged = true;\n animatedTranforms.current[index] = {\n [tkey]: update(tkey, currentTransform, transform[tkey])\n };\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n } else if (animatedStyleKey[key] != null || costlyToAnimateStyleKey[key] || jsDriverStyleKey[key]) {\n if (jsDriverStyleKey[key] && typeof val !== \"number\") continue;\n if (colorStyleKey[key] && !isAnimatableColor(val)) continue;\n if (!animateStyles.current[key]) animatedShapeChanged = true;\n animateStyles.current[key] = update(key, animatedValueFor(key), val);\n seenAnimateKeys.add(key);\n }\n }\n if (emitterDerivesLeading) {\n if (emitterMovesFontSize) {\n if (!animateStyles.current.fontSize) animatedShapeChanged = true;\n animateStyles.current.fontSize = update(\"fontSize\", animatedValueFor(\"fontSize\"), nextStyle.fontSize);\n seenAnimateKeys.add(\"fontSize\");\n }\n if (emitterMovesLeading) {\n if (!leadingRatioValue.current) animatedShapeChanged = true;\n leadingRatioValue.current = update(\"lineHeight\", leadingRatioValueFrom(), emittedRatio);\n }\n }\n if (emitterDerivesLeading !== paintsDerivedLeading.current) {\n animatedShapeChanged = true;\n }\n for (var key1 in animateStyles.current) {\n if (!seenAnimateKeys.has(key1)) {\n delete animateStyles.current[key1];\n animatedShapeChanged = true;\n }\n }\n if (animatedTranforms.current.length > transformCount) {\n animatedTranforms.current = animatedTranforms.current.slice(0, transformCount);\n animatedShapeChanged = true;\n }\n paintedTextRef.current = {\n fontSize: nextStyle.fontSize,\n lineHeight: nextStyle.lineHeight,\n ratio: emittedRatio\n };\n runners.forEach(function(r) {\n return r();\n });\n if (animatedShapeChanged && stateRef.current.nextState) {\n var _stateRef_current_baseSetStateShallow, _stateRef_current;\n (_stateRef_current_baseSetStateShallow = (_stateRef_current = stateRef.current).baseSetStateShallow) === null || _stateRef_current_baseSetStateShallow === void 0 ? void 0 : _stateRef_current_baseSetStateShallow.call(_stateRef_current, stateRef.current.nextState);\n }\n function update(key2, animated, valIn) {\n var isColor = colorStyleKey[key2];\n var [numVal, type] = isColor ? [\n 0,\n void 0\n ] : getValue(valIn);\n var animateToValue = numVal;\n var value = animated || new import_react_native.Animated.Value(numVal);\n var curInterpolation = animationsState.current.get(value);\n if (type) {\n var _curInterpolation_current;\n animationsState.current.set(value, {\n interpolation: value.interpolate(getInterpolated((_curInterpolation_current = curInterpolation === null || curInterpolation === void 0 ? void 0 : curInterpolation.current) !== null && _curInterpolation_current !== void 0 ? _curInterpolation_current : value[\"_value\"], numVal, type)),\n current: numVal\n });\n }\n if (isColor) {\n animateToValue = (curInterpolation === null || curInterpolation === void 0 ? void 0 : curInterpolation.animateToValue) ? 0 : 1;\n animationsState.current.set(value, {\n current: valIn,\n interpolation: value.interpolate(getColorInterpolated(curInterpolation === null || curInterpolation === void 0 ? void 0 : curInterpolation.current, valIn, animateToValue)),\n animateToValue: (curInterpolation === null || curInterpolation === void 0 ? void 0 : curInterpolation.animateToValue) ? 0 : 1\n });\n }\n var animationConfig = getAnimationConfig(key2, animations, emittedTransition !== null && emittedTransition !== void 0 ? emittedTransition : effectiveTransition, \"default\");\n runners.push(function() {\n value.stopAnimation();\n var { type: type2, delay, ...config } = animationConfig;\n var anim = import_react_native.Animated[type2 || \"spring\"](value, {\n toValue: animateToValue,\n ...config,\n useNativeDriver: useNativeDriverForNode\n });\n (delay ? import_react_native.Animated.sequence([\n import_react_native.Animated.delay(delay),\n anim\n ]) : anim).start();\n });\n return value;\n }\n };\n useStyleEmitter === null || useStyleEmitter === void 0 ? void 0 : useStyleEmitter(onEmittedStyle);\n if (process.env.NODE_ENV === \"development\") {\n if (props[\"debug\"] === \"verbose\") {\n console.info(`Animated`, {\n response: res,\n inputStyle: style,\n isExiting\n });\n }\n }\n return res;\n }\n };\n}\nfunction getColorInterpolated(currentColor, nextColor, animateToValue) {\n var inputRange = [\n 0,\n 1\n ];\n var outputRange = [\n currentColor ? currentColor : nextColor,\n nextColor\n ];\n if (animateToValue === 0) {\n outputRange.reverse();\n }\n return {\n inputRange,\n outputRange\n };\n}\nfunction getInterpolated(current, next) {\n var postfix = arguments.length > 2 && arguments[2] !== void 0 ? arguments[2] : \"deg\";\n if (next === current) {\n current = next - 1e-9;\n }\n var inputRange = [\n current,\n next\n ];\n var outputRange = [\n `${current}${postfix}`,\n `${next}${postfix}`\n ];\n if (next < current) {\n inputRange.reverse();\n outputRange.reverse();\n }\n return {\n inputRange,\n outputRange\n };\n}\nfunction entryToRN(entry) {\n var extra = entry.timing.kind === \"spring\" ? entry.timing.extra : void 0;\n if (entry.timing.kind === \"spring\") {\n return {\n type: \"spring\",\n stiffness: entry.timing.stiffness,\n damping: entry.timing.damping,\n mass: entry.timing.mass,\n ...typeof (extra === null || extra === void 0 ? void 0 : extra.velocity) === \"number\" ? {\n velocity: extra.velocity\n } : null,\n ...typeof (extra === null || extra === void 0 ? void 0 : extra.overshootClamping) === \"boolean\" ? {\n overshootClamping: extra.overshootClamping\n } : null,\n ...entry.delayMs ? {\n delay: entry.delayMs\n } : null\n };\n }\n var bezier = (0, import_animation_helpers.easingToBezier)(entry.timing.easing);\n return {\n type: \"timing\",\n duration: entry.timing.durationMs,\n // `linear()` and `steps()` have no bezier equivalent; RN's default easing\n // is the honest answer rather than a curve we made up\n ...bezier ? {\n easing: import_react_native.Easing.bezier(bezier[0], bezier[1], bezier[2], bezier[3])\n } : null,\n ...entry.delayMs ? {\n delay: entry.delayMs\n } : null\n };\n}\nvar snapConfig = {\n type: \"timing\",\n duration: 0\n};\nfunction getAnimationConfig(key, animations, transition) {\n var animationState = arguments.length > 3 && arguments[3] !== void 0 ? arguments[3] : \"default\";\n var resolved = (0, import_animation_helpers.forAnimationState)((0, import_animation_helpers.resolveTransition)(transition, {\n animations\n }), animationState);\n var entry = (0, import_animation_helpers.getTransitionForKey)(resolved, key);\n return entry ? entryToRN(entry) : snapConfig;\n}\nfunction getValue(input) {\n var isColor = arguments.length > 1 && arguments[1] !== void 0 ? arguments[1] : false;\n if (typeof input !== \"string\") {\n return [\n input\n ];\n }\n var _input_match;\n var [_, number, after] = (_input_match = input.match(/(-?(?:\\d+\\.?\\d*|\\.\\d+))(deg|%|px)?/)) !== null && _input_match !== void 0 ? _input_match : [];\n return [\n +number,\n after\n ];\n}\n//# sourceMappingURL=createAnimations.native.js.map\n"],"mappings":"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"}
@@ -4,7 +4,7 @@ import { ResetPresence, usePresence } from "@tamagui/use-presence";
4
4
  import { useEvent } from "@tamagui/web";
5
5
  import { useThemeWithState } from "@tamagui/web/internal-runtime";
6
6
  import React from "react";
7
- import { Animated, Easing, processColor } from "react-native";
7
+ import { Animated, Easing, TextInput, processColor } from "react-native";
8
8
 
9
9
  var isFabric = !isWeb && typeof global !== "undefined" && !!global.__nativeFabricUIManager;
10
10
  var resolveDynamicValue = function(value, isDark) {
@@ -35,6 +35,14 @@ var layoutStyleKey = {
35
35
  minWidth: true,
36
36
  maxWidth: true
37
37
  };
38
+ var textMetricStyleKey = {
39
+ fontSize: true,
40
+ lineHeight: true
41
+ };
42
+ var jsDriverStyleKey = {
43
+ ...layoutStyleKey,
44
+ ...textMetricStyleKey
45
+ };
38
46
  function hasAnimatedLayoutKey(style, isDark, resolved) {
39
47
  for (var key in layoutStyleKey) {
40
48
  if (!getTransitionForKey(resolved, key)) continue;
@@ -42,6 +50,16 @@ function hasAnimatedLayoutKey(style, isDark, resolved) {
42
50
  }
43
51
  return false;
44
52
  }
53
+ var getLeadingRatio = function(metrics) {
54
+ var ratio = metrics === null || metrics === void 0 ? void 0 : metrics.lineHeight;
55
+ return typeof ratio === "number" && Number.isFinite(ratio) && ratio >= 0 ? ratio : void 0;
56
+ };
57
+ var paintsLeadingProduct = function(style, ratio) {
58
+ return ratio !== void 0 && typeof style.fontSize === "number" && typeof style.lineHeight === "number";
59
+ };
60
+ var inheritedFontSizeNode = function(style, ratio, inheritedText) {
61
+ return ratio !== void 0 && typeof style.fontSize !== "number" && (inheritedText === null || inheritedText === void 0 ? void 0 : inheritedText.driver) === "react-native" ? inheritedText.fontSize : void 0;
62
+ };
45
63
  function isAnimatableColor(value) {
46
64
  return typeof value === "string" && processColor(value) != null;
47
65
  }
@@ -60,6 +78,7 @@ var costlyToAnimateStyleKey = {
60
78
  };
61
79
  var AnimatedView = Animated.View;
62
80
  var AnimatedText = Animated.Text;
81
+ var animatedTextInput;
63
82
  function useAnimatedNumber(initial) {
64
83
  var state = React.useRef(null);
65
84
  if (!state.current) {
@@ -175,8 +194,31 @@ function createAnimations(animations, options) {
175
194
  useAnimatedNumbersStyle,
176
195
  usePresence,
177
196
  ResetPresence,
197
+ useTextMetrics: function(param) {
198
+ var { inheritedText, lineHeight } = param;
199
+ var node = (inheritedText === null || inheritedText === void 0 ? void 0 : inheritedText.driver) === "react-native" ? inheritedText.fontSize : null;
200
+ var ratio = typeof lineHeight === "number" ? lineHeight : null;
201
+ var style = React.useMemo(function() {
202
+ return node ? ratio === null ? { fontSize: node } : {
203
+ fontSize: node,
204
+ lineHeight: Animated.multiply(node, ratio)
205
+ } : null;
206
+ }, [node, ratio]);
207
+ var textChannel = inheritedText !== null && inheritedText !== void 0 ? inheritedText : null;
208
+ if (!style) return {
209
+ style: null,
210
+ textChannel
211
+ };
212
+ animatedTextInput || (animatedTextInput = Animated.createAnimatedComponent(TextInput));
213
+ return {
214
+ style,
215
+ textChannel,
216
+ Text: AnimatedText,
217
+ TextInput: animatedTextInput
218
+ };
219
+ },
178
220
  useAnimations: function(param) {
179
- var { props, onTransition, style, componentState, presence, stateRef, styleState, useStyleEmitter } = param;
221
+ var { props, onTransition, style, componentState, presence, stateRef, styleState, useStyleEmitter, inheritedText } = param;
180
222
  var _themeState_name;
181
223
  var isDisabled = isWeb && componentState.unmounted === true;
182
224
  var isExiting = (presence === null || presence === void 0 ? void 0 : presence[0]) === false;
@@ -199,6 +241,36 @@ function createAnimations(animations, options) {
199
241
  var [, themeState] = useThemeWithState({});
200
242
  var isDark = (themeState === null || themeState === void 0 ? void 0 : themeState.scheme) === "dark" || (themeState === null || themeState === void 0 ? void 0 : (_themeState_name = themeState.name) === null || _themeState_name === void 0 ? void 0 : _themeState_name.startsWith("dark"));
201
243
  var animateStyles = React.useRef({});
244
+ var leadingRatioValue = React.useRef(null);
245
+ var leadingRatioRef = React.useRef(void 0);
246
+ var paintsDerivedLeading = React.useRef(false);
247
+ var textChannelRef = React.useRef(null);
248
+ leadingRatioRef.current = getLeadingRatio(styleState === null || styleState === void 0 ? void 0 : styleState.nativeTextMetrics);
249
+ var paintedTextRef = React.useRef({});
250
+ var movesTextValue = function(key, target) {
251
+ if (typeof target !== "number") return false;
252
+ var node = animateStyles.current[key];
253
+ var last = node ? node["_value"] : paintedTextRef.current[key];
254
+ return last !== void 0 && last !== target;
255
+ };
256
+ var movesLeadingRatio = function(ratio) {
257
+ if (ratio === void 0) return false;
258
+ var node = leadingRatioValue.current;
259
+ var last = node ? node["_value"] : paintedTextRef.current.ratio;
260
+ return last !== void 0 && last !== ratio;
261
+ };
262
+ var fontSizeNode = React.useRef(null);
263
+ var animatedValueFor = function(key) {
264
+ var painted = animateStyles.current[key];
265
+ if (painted) return painted;
266
+ if (key === "fontSize" && fontSizeNode.current) return fontSizeNode.current;
267
+ if (textMetricStyleKey[key]) return new Animated.Value(paintedTextRef.current[key]);
268
+ return void 0;
269
+ };
270
+ var leadingRatioValueFrom = function() {
271
+ var _leadingRatioValue_current;
272
+ return (_leadingRatioValue_current = leadingRatioValue.current) !== null && _leadingRatioValue_current !== void 0 ? _leadingRatioValue_current : new Animated.Value(paintedTextRef.current.ratio);
273
+ };
202
274
  var animatedTranforms = React.useRef([]);
203
275
  var animationsState = React.useRef(/* @__PURE__ */ new WeakMap());
204
276
  var pseudoActiveRef = React.useRef(false);
@@ -232,18 +304,38 @@ function createAnimations(animations, options) {
232
304
  isExiting,
233
305
  !!onTransition,
234
306
  isDark,
235
- justFinishedEntering
307
+ justFinishedEntering,
308
+ leadingRatioRef.current,
309
+ inheritedText
236
310
  ];
237
311
  var res = React.useMemo(function() {
312
+ var _textChannelRef_current;
238
313
  var runners = [];
239
314
  var completions = [];
240
315
  var animationState = isExiting ? "exit" : isEntering || justFinishedEntering ? "enter" : "default";
241
316
  var resolved = forAnimationState(resolveTransition(effectiveTransition, { animations }), animationState);
242
317
  var nonAnimatedStyle = {};
243
- var useNativeDriverForNode = nativeDriver && !hasAnimatedLayoutKey(style, isDark, resolved);
318
+ var paintedRatio = leadingRatioRef.current;
319
+ var paintsProduct = paintsLeadingProduct(style, paintedRatio);
320
+ var movesFontSize = movesTextValue("fontSize", style.fontSize);
321
+ var movesLeading = paintsProduct ? movesLeadingRatio(paintedRatio) : movesTextValue("lineHeight", style.lineHeight);
322
+ if (!isExiting && !isDisabled && !pseudoActiveRef.current) {
323
+ if (!movesFontSize) delete animateStyles.current.fontSize;
324
+ if (!movesLeading) delete animateStyles.current.lineHeight;
325
+ }
326
+ if (isDisabled || typeof style.fontSize !== "number" || !getTransitionForKey(resolved, "fontSize")) {
327
+ fontSizeNode.current = null;
328
+ } else if (!fontSizeNode.current) {
329
+ fontSizeNode.current = new Animated.Value(style.fontSize);
330
+ }
244
331
  var seenAnimateKeys = /* @__PURE__ */ new Set();
245
332
  var sawTransform = false;
246
333
  var transformCount = 0;
334
+ var derivesLeading = !isDisabled && paintsProduct && (movesFontSize || movesLeading) && (!!getTransitionForKey(resolved, "fontSize") || !!getTransitionForKey(resolved, "lineHeight"));
335
+ var inheritedFontSize = isDisabled ? void 0 : inheritedFontSizeNode(style, paintedRatio, inheritedText);
336
+ var useNativeDriverForNode = nativeDriver && !hasAnimatedLayoutKey(style, isDark, resolved) && !movesFontSize && !movesLeading && !inheritedFontSize && !Object.keys(animateStyles.current).some(function(key2) {
337
+ return jsDriverStyleKey[key2];
338
+ });
247
339
  for (var key in style) {
248
340
  var rawVal = style[key];
249
341
  var val = resolveDynamicValue(rawVal, isDark);
@@ -251,7 +343,17 @@ function createAnimations(animations, options) {
251
343
  if (isDisabled) {
252
344
  continue;
253
345
  }
254
- if (animatedStyleKey[key] == null && !costlyToAnimateStyleKey[key] && !layoutStyleKey[key]) {
346
+ if ((derivesLeading || inheritedFontSize) && (key === "fontSize" || key === "lineHeight")) {
347
+ if (key === "fontSize" && derivesLeading && !movesFontSize) {
348
+ nonAnimatedStyle[key] = val;
349
+ }
350
+ continue;
351
+ }
352
+ if (textMetricStyleKey[key] && !(key === "fontSize" ? movesFontSize : movesLeading)) {
353
+ nonAnimatedStyle[key] = val;
354
+ continue;
355
+ }
356
+ if (animatedStyleKey[key] == null && !costlyToAnimateStyleKey[key] && !jsDriverStyleKey[key]) {
255
357
  nonAnimatedStyle[key] = val;
256
358
  continue;
257
359
  }
@@ -259,7 +361,7 @@ function createAnimations(animations, options) {
259
361
  nonAnimatedStyle[key] = val;
260
362
  continue;
261
363
  }
262
- if (layoutStyleKey[key] && typeof val !== "number") {
364
+ if (jsDriverStyleKey[key] && typeof val !== "number") {
263
365
  nonAnimatedStyle[key] = val;
264
366
  continue;
265
367
  }
@@ -268,7 +370,7 @@ function createAnimations(animations, options) {
268
370
  continue;
269
371
  }
270
372
  if (key !== "transform") {
271
- animateStyles.current[key] = update(key, animateStyles.current[key], val);
373
+ animateStyles.current[key] = update(key, animatedValueFor(key), val);
272
374
  seenAnimateKeys.add(key);
273
375
  continue;
274
376
  }
@@ -305,6 +407,35 @@ function createAnimations(animations, options) {
305
407
  }
306
408
  }
307
409
  }
410
+ var ratioFactor = function() {
411
+ if (!movesLeading) {
412
+ leadingRatioValue.current = null;
413
+ return paintedRatio;
414
+ }
415
+ leadingRatioValue.current = update("lineHeight", leadingRatioValueFrom(), paintedRatio);
416
+ return leadingRatioValue.current;
417
+ };
418
+ var derivedLeading;
419
+ if (derivesLeading) {
420
+ var fontSizeFactor = style.fontSize;
421
+ if (movesFontSize) {
422
+ fontSizeFactor = update("fontSize", animatedValueFor("fontSize"), style.fontSize);
423
+ animateStyles.current.fontSize = fontSizeFactor;
424
+ seenAnimateKeys.add("fontSize");
425
+ }
426
+ derivedLeading = Animated.multiply(fontSizeFactor, ratioFactor());
427
+ } else if (inheritedFontSize) {
428
+ derivedLeading = Animated.multiply(inheritedFontSize, ratioFactor());
429
+ } else if (!isDisabled) {
430
+ leadingRatioValue.current = null;
431
+ }
432
+ paintsDerivedLeading.current = !!derivedLeading;
433
+ var ownFontSizeNode = fontSizeNode.current;
434
+ var textChannel = ownFontSizeNode ? ((_textChannelRef_current = textChannelRef.current) === null || _textChannelRef_current === void 0 ? void 0 : _textChannelRef_current.fontSize) === ownFontSizeNode ? textChannelRef.current : {
435
+ fontSize: ownFontSizeNode,
436
+ driver: "react-native"
437
+ } : typeof style.fontSize === "number" ? null : inheritedText !== null && inheritedText !== void 0 ? inheritedText : null;
438
+ textChannelRef.current = textChannel;
308
439
  if (!isExiting && !isDisabled && !pseudoActiveRef.current) {
309
440
  for (var k in animateStyles.current) {
310
441
  if (!seenAnimateKeys.has(k)) delete animateStyles.current[k];
@@ -327,11 +458,20 @@ function createAnimations(animations, options) {
327
458
  var _animationsState_current_get;
328
459
  return [k2, ((_animationsState_current_get = animationsState.current.get(v)) === null || _animationsState_current_get === void 0 ? void 0 : _animationsState_current_get.interpolation) || v];
329
460
  })),
461
+ ...derivedLeading ? { lineHeight: derivedLeading } : null,
330
462
  ...animatedTransformStyle
331
463
  };
464
+ if (!isDisabled) {
465
+ paintedTextRef.current = {
466
+ fontSize: style.fontSize,
467
+ lineHeight: style.lineHeight,
468
+ ratio: paintedRatio
469
+ };
470
+ }
332
471
  return {
333
472
  runners,
334
473
  completions,
474
+ textChannel,
335
475
  style: [nonAnimatedStyle, animatedStyle]
336
476
  };
337
477
  function update(key2, animated, valIn) {
@@ -471,20 +611,31 @@ function createAnimations(animations, options) {
471
611
  }
472
612
  });
473
613
  }, args);
474
- useStyleEmitter === null || useStyleEmitter === void 0 ? void 0 : useStyleEmitter(function(nextStyle, emittedTransition, pseudoActive) {
614
+ var onEmittedStyle = function(nextStyle, emittedTransition, pseudoActive, nextMetrics) {
475
615
  pseudoActiveRef.current = pseudoActive === true;
476
616
  var runners = [];
477
617
  var seenAnimateKeys = /* @__PURE__ */ new Set();
478
618
  var transformCount = 0;
479
619
  var animatedShapeChanged = false;
480
620
  var emittedResolved = forAnimationState(resolveTransition(emittedTransition !== null && emittedTransition !== void 0 ? emittedTransition : effectiveTransition, { animations }), "default");
481
- var useNativeDriverForNode = nativeDriver && !hasAnimatedLayoutKey(nextStyle, isDark, emittedResolved) && !Object.keys(animateStyles.current).some(function(key2) {
482
- return layoutStyleKey[key2];
621
+ var emittedRatio = getLeadingRatio(nextMetrics);
622
+ var emitterPaintsProduct = paintsLeadingProduct(nextStyle, emittedRatio);
623
+ var emitterMovesFontSize = movesTextValue("fontSize", nextStyle.fontSize);
624
+ var emitterMovesLeading = emitterPaintsProduct ? movesLeadingRatio(emittedRatio) : movesTextValue("lineHeight", nextStyle.lineHeight);
625
+ var useNativeDriverForNode = nativeDriver && !hasAnimatedLayoutKey(nextStyle, isDark, emittedResolved) && !emitterMovesFontSize && !emitterMovesLeading && !inheritedFontSizeNode(nextStyle, emittedRatio, inheritedText) && !Object.keys(animateStyles.current).some(function(key2) {
626
+ return jsDriverStyleKey[key2];
483
627
  });
628
+ var emitterDerivesLeading = emitterPaintsProduct && (emitterMovesFontSize || emitterMovesLeading) && (!!getTransitionForKey(emittedResolved, "fontSize") || !!getTransitionForKey(emittedResolved, "lineHeight"));
484
629
  for (var key in nextStyle) {
485
630
  var rawVal = nextStyle[key];
486
631
  var val = resolveDynamicValue(rawVal, isDark);
487
632
  if (val === void 0) continue;
633
+ if (emitterDerivesLeading && (key === "fontSize" || key === "lineHeight")) {
634
+ continue;
635
+ }
636
+ if (textMetricStyleKey[key] && !(key === "fontSize" ? emitterMovesFontSize : emitterMovesLeading)) {
637
+ continue;
638
+ }
488
639
  if (key === "transform" && Array.isArray(val)) {
489
640
  var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;
490
641
  try {
@@ -512,14 +663,28 @@ function createAnimations(animations, options) {
512
663
  }
513
664
  }
514
665
  }
515
- } else if (animatedStyleKey[key] != null || costlyToAnimateStyleKey[key] || layoutStyleKey[key]) {
516
- if (layoutStyleKey[key] && typeof val !== "number") continue;
666
+ } else if (animatedStyleKey[key] != null || costlyToAnimateStyleKey[key] || jsDriverStyleKey[key]) {
667
+ if (jsDriverStyleKey[key] && typeof val !== "number") continue;
517
668
  if (colorStyleKey[key] && !isAnimatableColor(val)) continue;
518
669
  if (!animateStyles.current[key]) animatedShapeChanged = true;
519
- animateStyles.current[key] = update(key, animateStyles.current[key], val);
670
+ animateStyles.current[key] = update(key, animatedValueFor(key), val);
520
671
  seenAnimateKeys.add(key);
521
672
  }
522
673
  }
674
+ if (emitterDerivesLeading) {
675
+ if (emitterMovesFontSize) {
676
+ if (!animateStyles.current.fontSize) animatedShapeChanged = true;
677
+ animateStyles.current.fontSize = update("fontSize", animatedValueFor("fontSize"), nextStyle.fontSize);
678
+ seenAnimateKeys.add("fontSize");
679
+ }
680
+ if (emitterMovesLeading) {
681
+ if (!leadingRatioValue.current) animatedShapeChanged = true;
682
+ leadingRatioValue.current = update("lineHeight", leadingRatioValueFrom(), emittedRatio);
683
+ }
684
+ }
685
+ if (emitterDerivesLeading !== paintsDerivedLeading.current) {
686
+ animatedShapeChanged = true;
687
+ }
523
688
  for (var key1 in animateStyles.current) {
524
689
  if (!seenAnimateKeys.has(key1)) {
525
690
  delete animateStyles.current[key1];
@@ -530,6 +695,11 @@ function createAnimations(animations, options) {
530
695
  animatedTranforms.current = animatedTranforms.current.slice(0, transformCount);
531
696
  animatedShapeChanged = true;
532
697
  }
698
+ paintedTextRef.current = {
699
+ fontSize: nextStyle.fontSize,
700
+ lineHeight: nextStyle.lineHeight,
701
+ ratio: emittedRatio
702
+ };
533
703
  runners.forEach(function(r) {
534
704
  return r();
535
705
  });
@@ -571,7 +741,8 @@ function createAnimations(animations, options) {
571
741
  });
572
742
  return value;
573
743
  }
574
- });
744
+ };
745
+ useStyleEmitter === null || useStyleEmitter === void 0 ? void 0 : useStyleEmitter(onEmittedStyle);
575
746
  if (process.env.NODE_ENV === "development") {
576
747
  if (props["debug"] === "verbose") {
577
748
  console.info(`Animated`, {