react-native-ease 0.3.0 → 0.4.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +116 -0
- package/android/src/main/java/com/ease/EaseView.kt +261 -82
- package/android/src/main/java/com/ease/EaseViewManager.kt +5 -49
- package/ios/EaseView.mm +275 -79
- package/lib/module/EaseView.js +85 -28
- package/lib/module/EaseView.js.map +1 -1
- package/lib/module/EaseView.web.js +167 -26
- package/lib/module/EaseView.web.js.map +1 -1
- package/lib/module/EaseViewNativeComponent.ts +24 -16
- package/lib/typescript/src/EaseView.d.ts +2 -0
- package/lib/typescript/src/EaseView.d.ts.map +1 -1
- package/lib/typescript/src/EaseView.web.d.ts.map +1 -1
- package/lib/typescript/src/EaseViewNativeComponent.d.ts +20 -8
- package/lib/typescript/src/EaseViewNativeComponent.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +1 -1
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/types.d.ts +17 -2
- package/lib/typescript/src/types.d.ts.map +1 -1
- package/package.json +1 -1
- package/skills/react-native-ease-refactor/SKILL.md +8 -2
- package/src/EaseView.tsx +116 -53
- package/src/EaseView.web.tsx +209 -42
- package/src/EaseViewNativeComponent.ts +24 -16
- package/src/index.tsx +2 -0
- package/src/types.ts +22 -2
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["StyleSheet","NativeEaseView","jsx","_jsx","IDENTITY","opacity","translateX","translateY","scaleX","scaleY","rotate","rotateX","rotateY","borderRadius","MASK_OPACITY","MASK_TRANSLATE_X","MASK_TRANSLATE_Y","MASK_SCALE_X","MASK_SCALE_Y","MASK_ROTATE","MASK_ROTATE_X","MASK_ROTATE_Y","MASK_BORDER_RADIUS","MASK_BACKGROUND_COLOR","ANIMATE_TO_STYLE_KEYS","scale","backgroundColor","EASING_PRESETS","linear","easeIn","easeOut","easeInOut","
|
|
1
|
+
{"version":3,"names":["StyleSheet","NativeEaseView","jsx","_jsx","IDENTITY","opacity","translateX","translateY","scaleX","scaleY","rotate","rotateX","rotateY","borderRadius","MASK_OPACITY","MASK_TRANSLATE_X","MASK_TRANSLATE_Y","MASK_SCALE_X","MASK_SCALE_Y","MASK_ROTATE","MASK_ROTATE_X","MASK_ROTATE_Y","MASK_BORDER_RADIUS","MASK_BACKGROUND_COLOR","ANIMATE_TO_STYLE_KEYS","scale","backgroundColor","EASING_PRESETS","linear","easeIn","easeOut","easeInOut","isSingleTransition","t","DEFAULT_CONFIG","type","duration","easingBezier","damping","stiffness","mass","loop","delay","resolveSingleConfig","config","rawEasing","easing","__DEV__","Array","isArray","length","console","warn","CATEGORY_KEYS","resolveTransitions","transition","defaultConfig","default","result","key","specific","EaseView","animate","initialAnimate","onTransitionEnd","useHardwareLayer","transformOrigin","style","rest","animatedProperties","resolved","initial","resolvedInitial","animBgColor","initialBgColor","cleanStyle","flat","flatten","conflicting","Set","Object","keys","styleKey","add","size","join","cleaned","k","v","entries","has","transitions","handleTransitionEnd","event","nativeEvent","undefined","animateOpacity","animateTranslateX","animateTranslateY","animateScaleX","animateScaleY","animateRotate","animateRotateX","animateRotateY","animateBorderRadius","animateBackgroundColor","initialAnimateOpacity","initialAnimateTranslateX","initialAnimateTranslateY","initialAnimateScaleX","initialAnimateScaleY","initialAnimateRotate","initialAnimateRotateX","initialAnimateRotateY","initialAnimateBorderRadius","initialAnimateBackgroundColor","transformOriginX","x","transformOriginY","y"],"sourceRoot":"../../src","sources":["EaseView.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -23,6 +23,73 @@ const EASING_PRESETS = {
|
|
|
23
23
|
easeOut: [0, 0, 0.58, 1],
|
|
24
24
|
easeInOut: [0.42, 0, 0.58, 1]
|
|
25
25
|
};
|
|
26
|
+
|
|
27
|
+
// ---------------------------------------------------------------------------
|
|
28
|
+
// Spring simulation → CSS linear() easing
|
|
29
|
+
// ---------------------------------------------------------------------------
|
|
30
|
+
|
|
31
|
+
/** Simulate a damped spring from 0 → 1 and return settling duration + sample points. */
|
|
32
|
+
function simulateSpring(damping, stiffness, mass) {
|
|
33
|
+
const dt = 1 / 120; // 120 Hz simulation
|
|
34
|
+
const maxTime = 10; // 10s safety cap
|
|
35
|
+
let x = 0;
|
|
36
|
+
let v = 0;
|
|
37
|
+
const samples = [0];
|
|
38
|
+
let step = 0;
|
|
39
|
+
while (step * dt < maxTime) {
|
|
40
|
+
const a = (-stiffness * (x - 1) - damping * v) / mass;
|
|
41
|
+
v += a * dt;
|
|
42
|
+
x += v * dt;
|
|
43
|
+
step++;
|
|
44
|
+
// Downsample to ~60 fps (every 2nd sample)
|
|
45
|
+
if (step % 2 === 0) {
|
|
46
|
+
samples.push(Math.round(x * 10000) / 10000);
|
|
47
|
+
}
|
|
48
|
+
// Settled?
|
|
49
|
+
if (Math.abs(x - 1) < 0.001 && Math.abs(v) < 0.001) break;
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
// Ensure last point is exactly 1
|
|
53
|
+
samples[samples.length - 1] = 1;
|
|
54
|
+
return {
|
|
55
|
+
durationMs: Math.round(step * dt * 1000),
|
|
56
|
+
points: samples
|
|
57
|
+
};
|
|
58
|
+
}
|
|
59
|
+
|
|
60
|
+
/** Cache for computed spring easing strings (keyed by damping-stiffness-mass). */
|
|
61
|
+
const springCache = new Map();
|
|
62
|
+
function getSpringEasing(damping, stiffness, mass) {
|
|
63
|
+
const key = `${damping}-${stiffness}-${mass}`;
|
|
64
|
+
let cached = springCache.get(key);
|
|
65
|
+
if (cached) return cached;
|
|
66
|
+
const {
|
|
67
|
+
durationMs,
|
|
68
|
+
points
|
|
69
|
+
} = simulateSpring(damping, stiffness, mass);
|
|
70
|
+
const easing = `linear(${points.join(', ')})`;
|
|
71
|
+
cached = {
|
|
72
|
+
duration: durationMs,
|
|
73
|
+
easing
|
|
74
|
+
};
|
|
75
|
+
springCache.set(key, cached);
|
|
76
|
+
return cached;
|
|
77
|
+
}
|
|
78
|
+
|
|
79
|
+
/** Detect CSS linear() support (lazy, cached). */
|
|
80
|
+
let linearSupported = null;
|
|
81
|
+
function supportsLinearEasing() {
|
|
82
|
+
if (linearSupported != null) return linearSupported;
|
|
83
|
+
try {
|
|
84
|
+
const el = document.createElement('div');
|
|
85
|
+
el.style.transitionTimingFunction = 'linear(0, 1)';
|
|
86
|
+
linearSupported = el.style.transitionTimingFunction !== '';
|
|
87
|
+
} catch {
|
|
88
|
+
linearSupported = false;
|
|
89
|
+
}
|
|
90
|
+
return linearSupported;
|
|
91
|
+
}
|
|
92
|
+
const SPRING_FALLBACK_EASING = 'cubic-bezier(0.25, 0.46, 0.45, 0.94)';
|
|
26
93
|
function resolveAnimateValues(props) {
|
|
27
94
|
return {
|
|
28
95
|
...IDENTITY,
|
|
@@ -53,10 +120,78 @@ function buildTransform(vals) {
|
|
|
53
120
|
}
|
|
54
121
|
return parts.length > 0 ? parts.join(' ') : 'none';
|
|
55
122
|
}
|
|
123
|
+
|
|
124
|
+
/** Returns true if the transition is a SingleTransition (has a `type` field). */
|
|
125
|
+
function isSingleTransition(t) {
|
|
126
|
+
return 'type' in t;
|
|
127
|
+
}
|
|
128
|
+
|
|
129
|
+
/** Resolve a single config into CSS-ready duration/easing. */
|
|
130
|
+
function resolveConfigForCss(config) {
|
|
131
|
+
if (!config || config.type === 'none') {
|
|
132
|
+
return {
|
|
133
|
+
duration: 0,
|
|
134
|
+
easing: 'linear',
|
|
135
|
+
type: config?.type ?? 'timing'
|
|
136
|
+
};
|
|
137
|
+
}
|
|
138
|
+
return {
|
|
139
|
+
duration: resolveDuration(config),
|
|
140
|
+
easing: resolveEasing(config),
|
|
141
|
+
type: config.type
|
|
142
|
+
};
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
/** CSS property names for each category. */
|
|
146
|
+
const CSS_PROP_MAP = {
|
|
147
|
+
opacity: 'opacity',
|
|
148
|
+
transform: 'transform',
|
|
149
|
+
borderRadius: 'border-radius',
|
|
150
|
+
backgroundColor: 'background-color'
|
|
151
|
+
};
|
|
152
|
+
/** Resolve transition prop into per-category CSS configs. */
|
|
153
|
+
function resolvePerCategoryConfigs(transition) {
|
|
154
|
+
if (!transition) {
|
|
155
|
+
const def = resolveConfigForCss(undefined);
|
|
156
|
+
return {
|
|
157
|
+
opacity: def,
|
|
158
|
+
transform: def,
|
|
159
|
+
borderRadius: def,
|
|
160
|
+
backgroundColor: def
|
|
161
|
+
};
|
|
162
|
+
}
|
|
163
|
+
if (isSingleTransition(transition)) {
|
|
164
|
+
const def = resolveConfigForCss(transition);
|
|
165
|
+
return {
|
|
166
|
+
opacity: def,
|
|
167
|
+
transform: def,
|
|
168
|
+
borderRadius: def,
|
|
169
|
+
backgroundColor: def
|
|
170
|
+
};
|
|
171
|
+
}
|
|
172
|
+
// TransitionMap
|
|
173
|
+
const defaultConfig = resolveConfigForCss(transition.default);
|
|
174
|
+
return {
|
|
175
|
+
opacity: transition.opacity ? resolveConfigForCss(transition.opacity) : defaultConfig,
|
|
176
|
+
transform: transition.transform ? resolveConfigForCss(transition.transform) : defaultConfig,
|
|
177
|
+
borderRadius: transition.borderRadius ? resolveConfigForCss(transition.borderRadius) : defaultConfig,
|
|
178
|
+
backgroundColor: transition.backgroundColor ? resolveConfigForCss(transition.backgroundColor) : defaultConfig
|
|
179
|
+
};
|
|
180
|
+
}
|
|
56
181
|
function resolveEasing(transition) {
|
|
57
|
-
if (!transition || transition.type
|
|
58
|
-
return '
|
|
182
|
+
if (!transition || transition.type === 'none') {
|
|
183
|
+
return 'linear';
|
|
59
184
|
}
|
|
185
|
+
if (transition.type === 'spring') {
|
|
186
|
+
const d = transition.damping ?? 15;
|
|
187
|
+
const s = transition.stiffness ?? 120;
|
|
188
|
+
const m = transition.mass ?? 1;
|
|
189
|
+
if (supportsLinearEasing()) {
|
|
190
|
+
return getSpringEasing(d, s, m).easing;
|
|
191
|
+
}
|
|
192
|
+
return SPRING_FALLBACK_EASING;
|
|
193
|
+
}
|
|
194
|
+
// timing
|
|
60
195
|
const easing = transition.easing ?? 'easeInOut';
|
|
61
196
|
const bezier = Array.isArray(easing) ? easing : EASING_PRESETS[easing];
|
|
62
197
|
return `cubic-bezier(${bezier[0]}, ${bezier[1]}, ${bezier[2]}, ${bezier[3]})`;
|
|
@@ -65,15 +200,13 @@ function resolveDuration(transition) {
|
|
|
65
200
|
if (!transition) return 300;
|
|
66
201
|
if (transition.type === 'timing') return transition.duration ?? 300;
|
|
67
202
|
if (transition.type === 'none') return 0;
|
|
68
|
-
|
|
69
|
-
const
|
|
70
|
-
const
|
|
71
|
-
|
|
203
|
+
// Spring: use simulation-derived duration (incorporates stiffness)
|
|
204
|
+
const d = transition.damping ?? 15;
|
|
205
|
+
const s = transition.stiffness ?? 120;
|
|
206
|
+
const m = transition.mass ?? 1;
|
|
207
|
+
return getSpringEasing(d, s, m).duration;
|
|
72
208
|
}
|
|
73
209
|
|
|
74
|
-
/** CSS transition properties that we animate. */
|
|
75
|
-
const TRANSITION_PROPS = ['opacity', 'transform', 'border-radius', 'background-color'];
|
|
76
|
-
|
|
77
210
|
/** Counter for unique keyframe names. */
|
|
78
211
|
let keyframeCounter = 0;
|
|
79
212
|
export function EaseView({
|
|
@@ -103,21 +236,29 @@ export function EaseView({
|
|
|
103
236
|
}, []); // eslint-disable-line react-hooks/exhaustive-deps
|
|
104
237
|
|
|
105
238
|
const displayValues = !mounted && hasInitial ? resolveAnimateValues(initialAnimate) : resolved;
|
|
106
|
-
const
|
|
107
|
-
|
|
239
|
+
const categoryConfigs = resolvePerCategoryConfigs(transition);
|
|
240
|
+
|
|
241
|
+
// For loop mode, use the default/single transition config
|
|
242
|
+
const singleTransition = transition && isSingleTransition(transition) ? transition : transition && !isSingleTransition(transition) ? transition.default : undefined;
|
|
243
|
+
const loopMode = singleTransition?.type === 'timing' ? singleTransition.loop : undefined;
|
|
244
|
+
const loopDuration = resolveDuration(singleTransition);
|
|
245
|
+
const loopEasing = resolveEasing(singleTransition);
|
|
108
246
|
const originX = ((transformOrigin?.x ?? 0.5) * 100).toFixed(1);
|
|
109
247
|
const originY = ((transformOrigin?.y ?? 0.5) * 100).toFixed(1);
|
|
110
|
-
const
|
|
111
|
-
|
|
112
|
-
|
|
248
|
+
const transitionCss = !mounted && hasInitial ? 'none' : Object.keys(CSS_PROP_MAP).filter(key => {
|
|
249
|
+
const cfg = categoryConfigs[key];
|
|
250
|
+
return cfg.type !== 'none' && cfg.duration > 0;
|
|
251
|
+
}).map(key => {
|
|
252
|
+
const cfg = categoryConfigs[key];
|
|
253
|
+
return `${CSS_PROP_MAP[key]} ${cfg.duration}ms ${cfg.easing}`;
|
|
254
|
+
}).join(', ') || 'none';
|
|
113
255
|
|
|
114
256
|
// Apply CSS transition/animation properties imperatively (not in RN style spec).
|
|
115
257
|
useEffect(() => {
|
|
116
258
|
const el = getElement();
|
|
117
259
|
if (!el) return;
|
|
118
260
|
if (!loopMode) {
|
|
119
|
-
|
|
120
|
-
el.style.transition = springTransition ?? transitionCss;
|
|
261
|
+
el.style.transition = transitionCss;
|
|
121
262
|
}
|
|
122
263
|
el.style.transformOrigin = `${originX}% ${originY}%`;
|
|
123
264
|
});
|
|
@@ -167,33 +308,33 @@ export function EaseView({
|
|
|
167
308
|
document.head.appendChild(styleEl);
|
|
168
309
|
const direction = loopMode === 'reverse' ? 'alternate' : 'normal';
|
|
169
310
|
el.style.transition = 'none';
|
|
170
|
-
el.style.animation = `${name} ${
|
|
311
|
+
el.style.animation = `${name} ${loopDuration}ms ${loopEasing} infinite ${direction}`;
|
|
171
312
|
return () => {
|
|
172
313
|
styleEl.remove();
|
|
173
314
|
el.style.animation = '';
|
|
174
315
|
animationNameRef.current = null;
|
|
175
316
|
};
|
|
176
|
-
}, [loopMode, animate, initialAnimate,
|
|
317
|
+
}, [loopMode, animate, initialAnimate, loopDuration, loopEasing, getElement]);
|
|
177
318
|
|
|
178
319
|
// Build animated style using RN transform array format.
|
|
179
320
|
// react-native-web converts these to CSS transform strings.
|
|
180
321
|
const animatedStyle = {
|
|
181
322
|
opacity: displayValues.opacity,
|
|
182
|
-
transform: [{
|
|
323
|
+
transform: [...(displayValues.translateX !== 0 ? [{
|
|
183
324
|
translateX: displayValues.translateX
|
|
184
|
-
}, {
|
|
325
|
+
}] : []), ...(displayValues.translateY !== 0 ? [{
|
|
185
326
|
translateY: displayValues.translateY
|
|
186
|
-
}, {
|
|
327
|
+
}] : []), ...(displayValues.scaleX !== 1 ? [{
|
|
187
328
|
scaleX: displayValues.scaleX
|
|
188
|
-
}, {
|
|
329
|
+
}] : []), ...(displayValues.scaleY !== 1 ? [{
|
|
189
330
|
scaleY: displayValues.scaleY
|
|
190
|
-
}, {
|
|
331
|
+
}] : []), ...(displayValues.rotate !== 0 ? [{
|
|
191
332
|
rotate: `${displayValues.rotate}deg`
|
|
192
|
-
}, {
|
|
333
|
+
}] : []), ...(displayValues.rotateX !== 0 ? [{
|
|
193
334
|
rotateX: `${displayValues.rotateX}deg`
|
|
194
|
-
}, {
|
|
335
|
+
}] : []), ...(displayValues.rotateY !== 0 ? [{
|
|
195
336
|
rotateY: `${displayValues.rotateY}deg`
|
|
196
|
-
}],
|
|
337
|
+
}] : [])],
|
|
197
338
|
...(displayValues.borderRadius > 0 ? {
|
|
198
339
|
borderRadius: displayValues.borderRadius
|
|
199
340
|
} : {}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["React","useEffect","useRef","useState","useCallback","View","jsx","_jsx","IDENTITY","opacity","translateX","translateY","scaleX","scaleY","rotate","rotateX","rotateY","borderRadius","EASING_PRESETS","linear","easeIn","easeOut","easeInOut","resolveAnimateValues","props","scale","backgroundColor","buildTransform","vals","parts","push","length","join","resolveEasing","transition","type","easing","bezier","Array","isArray","resolveDuration","duration","damping","mass","tau","Math","round","TRANSITION_PROPS","keyframeCounter","EaseView","animate","initialAnimate","onTransitionEnd","useHardwareLayer","_useHardwareLayer","transformOrigin","style","children","resolved","hasInitial","mounted","setMounted","viewRef","animationNameRef","getElement","current","getBoundingClientRect","displayValues","originX","x","toFixed","originY","y","transitionType","loopMode","loop","undefined","transitionCss","map","prop","el","springTransition","handler","e","target","currentTarget","propertyName","finished","addEventListener","removeEventListener","cleanEl","animation","fromValues","toValues","fromTransform","toTransform","name","hasBorderRadius","hasBgColor","fromBlock","filter","Boolean","toBlock","keyframes","styleEl","document","createElement","textContent","head","appendChild","direction","remove","animatedStyle","transform","ref"],"sourceRoot":"../../src","sources":["EaseView.web.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["React","useEffect","useRef","useState","useCallback","View","jsx","_jsx","IDENTITY","opacity","translateX","translateY","scaleX","scaleY","rotate","rotateX","rotateY","borderRadius","EASING_PRESETS","linear","easeIn","easeOut","easeInOut","simulateSpring","damping","stiffness","mass","dt","maxTime","x","v","samples","step","a","push","Math","round","abs","length","durationMs","points","springCache","Map","getSpringEasing","key","cached","get","easing","join","duration","set","linearSupported","supportsLinearEasing","el","document","createElement","style","transitionTimingFunction","SPRING_FALLBACK_EASING","resolveAnimateValues","props","scale","backgroundColor","buildTransform","vals","parts","isSingleTransition","t","resolveConfigForCss","config","type","resolveDuration","resolveEasing","CSS_PROP_MAP","transform","resolvePerCategoryConfigs","transition","def","undefined","defaultConfig","default","d","s","m","bezier","Array","isArray","keyframeCounter","EaseView","animate","initialAnimate","onTransitionEnd","useHardwareLayer","_useHardwareLayer","transformOrigin","children","resolved","hasInitial","mounted","setMounted","viewRef","animationNameRef","getElement","current","getBoundingClientRect","displayValues","categoryConfigs","singleTransition","loopMode","loop","loopDuration","loopEasing","originX","toFixed","originY","y","transitionCss","Object","keys","filter","cfg","map","handler","e","target","currentTarget","propertyName","finished","addEventListener","removeEventListener","cleanEl","animation","fromValues","toValues","fromTransform","toTransform","name","hasBorderRadius","hasBgColor","fromBlock","Boolean","toBlock","keyframes","styleEl","textContent","head","appendChild","direction","remove","animatedStyle","ref"],"sourceRoot":"../../src","sources":["EaseView.web.tsx"],"mappings":"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","ignoreList":[]}
|
|
@@ -6,6 +6,28 @@ import {
|
|
|
6
6
|
type ColorValue,
|
|
7
7
|
} from 'react-native';
|
|
8
8
|
|
|
9
|
+
type Float = CodegenTypes.Float;
|
|
10
|
+
type Int32 = CodegenTypes.Int32;
|
|
11
|
+
|
|
12
|
+
type NativeTransitionConfig = Readonly<{
|
|
13
|
+
type: string;
|
|
14
|
+
duration: Int32;
|
|
15
|
+
easingBezier: ReadonlyArray<Float>;
|
|
16
|
+
damping: Float;
|
|
17
|
+
stiffness: Float;
|
|
18
|
+
mass: Float;
|
|
19
|
+
loop: string;
|
|
20
|
+
delay: Int32;
|
|
21
|
+
}>;
|
|
22
|
+
|
|
23
|
+
type NativeTransitions = Readonly<{
|
|
24
|
+
defaultConfig: NativeTransitionConfig;
|
|
25
|
+
transform?: NativeTransitionConfig;
|
|
26
|
+
opacity?: NativeTransitionConfig;
|
|
27
|
+
borderRadius?: NativeTransitionConfig;
|
|
28
|
+
backgroundColor?: NativeTransitionConfig;
|
|
29
|
+
}>;
|
|
30
|
+
|
|
9
31
|
export interface NativeProps extends ViewProps {
|
|
10
32
|
// Bitmask of which properties are animated (0 = none, let style handle all)
|
|
11
33
|
animatedProperties?: CodegenTypes.WithDefault<CodegenTypes.Int32, 0>;
|
|
@@ -37,22 +59,8 @@ export interface NativeProps extends ViewProps {
|
|
|
37
59
|
>;
|
|
38
60
|
initialAnimateBackgroundColor?: ColorValue;
|
|
39
61
|
|
|
40
|
-
//
|
|
41
|
-
|
|
42
|
-
'timing' | 'spring' | 'none',
|
|
43
|
-
'timing'
|
|
44
|
-
>;
|
|
45
|
-
transitionDuration?: CodegenTypes.WithDefault<CodegenTypes.Int32, 300>;
|
|
46
|
-
// Easing cubic bezier control points [x1, y1, x2, y2] (default: easeInOut)
|
|
47
|
-
transitionEasingBezier?: ReadonlyArray<CodegenTypes.Float>;
|
|
48
|
-
transitionDamping?: CodegenTypes.WithDefault<CodegenTypes.Float, 15.0>;
|
|
49
|
-
transitionStiffness?: CodegenTypes.WithDefault<CodegenTypes.Float, 120.0>;
|
|
50
|
-
transitionMass?: CodegenTypes.WithDefault<CodegenTypes.Float, 1.0>;
|
|
51
|
-
transitionLoop?: CodegenTypes.WithDefault<
|
|
52
|
-
'none' | 'repeat' | 'reverse',
|
|
53
|
-
'none'
|
|
54
|
-
>;
|
|
55
|
-
transitionDelay?: CodegenTypes.WithDefault<CodegenTypes.Int32, 0>;
|
|
62
|
+
// Unified transition config — one struct with per-property configs
|
|
63
|
+
transitions?: NativeTransitions;
|
|
56
64
|
|
|
57
65
|
// Transform origin (0–1 fractions, default center)
|
|
58
66
|
transformOriginX?: CodegenTypes.WithDefault<CodegenTypes.Float, 0.5>;
|
|
@@ -28,6 +28,8 @@ export type EaseViewProps = ViewProps & {
|
|
|
28
28
|
useHardwareLayer?: boolean;
|
|
29
29
|
/** Pivot point for scale and rotation as 0–1 fractions. @default { x: 0.5, y: 0.5 } (center) */
|
|
30
30
|
transformOrigin?: TransformOrigin;
|
|
31
|
+
/** NativeWind / Tailwind CSS class string. Requires NativeWind in your project. */
|
|
32
|
+
className?: string;
|
|
31
33
|
};
|
|
32
34
|
export declare function EaseView({ animate, initialAnimate, transition, onTransitionEnd, useHardwareLayer, transformOrigin, style, ...rest }: EaseViewProps): import("react/jsx-runtime").JSX.Element;
|
|
33
35
|
//# sourceMappingURL=EaseView.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EaseView.d.ts","sourceRoot":"","sources":["../../../src/EaseView.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,SAAS,EAAkB,MAAM,cAAc,CAAC;AAE1E,OAAO,KAAK,EACV,YAAY,
|
|
1
|
+
{"version":3,"file":"EaseView.d.ts","sourceRoot":"","sources":["../../../src/EaseView.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAc,KAAK,SAAS,EAAkB,MAAM,cAAc,CAAC;AAE1E,OAAO,KAAK,EACV,YAAY,EAGZ,UAAU,EACV,kBAAkB,EAClB,eAAe,EAChB,MAAM,SAAS,CAAC;AAiKjB,MAAM,MAAM,aAAa,GAAG,SAAS,GAAG;IACtC,6CAA6C;IAC7C,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,4EAA4E;IAC5E,cAAc,CAAC,EAAE,YAAY,CAAC;IAC9B,kDAAkD;IAClD,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,wGAAwG;IACxG,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAC;IACtD;;;;;;;;;;;;;;;OAeG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,gGAAgG;IAChG,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,mFAAmF;IACnF,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,wBAAgB,QAAQ,CAAC,EACvB,OAAO,EACP,cAAc,EACd,UAAU,EACV,eAAe,EACf,gBAAwB,EACxB,eAAe,EACf,KAAK,EACL,GAAG,IAAI,EACR,EAAE,aAAa,2CA0Hf"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EaseView.web.d.ts","sourceRoot":"","sources":["../../../src/EaseView.web.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAC;AACxE,OAAO,EAAQ,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,KAAK,EACV,YAAY,
|
|
1
|
+
{"version":3,"file":"EaseView.web.d.ts","sourceRoot":"","sources":["../../../src/EaseView.web.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAC;AACxE,OAAO,EAAQ,KAAK,SAAS,EAAE,KAAK,SAAS,EAAE,MAAM,cAAc,CAAC;AACpE,OAAO,KAAK,EACV,YAAY,EAGZ,UAAU,EACV,kBAAkB,EAClB,eAAe,EAChB,MAAM,SAAS,CAAC;AAiGjB,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,CAAC,EAAE,YAAY,CAAC;IACvB,cAAc,CAAC,EAAE,YAAY,CAAC;IAC9B,UAAU,CAAC,EAAE,UAAU,CAAC;IACxB,eAAe,CAAC,EAAE,CAAC,KAAK,EAAE,kBAAkB,KAAK,IAAI,CAAC;IACtD,oBAAoB;IACpB,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B,eAAe,CAAC,EAAE,eAAe,CAAC;IAClC,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAC7B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;CAC5B,CAAC;AAoJF,wBAAgB,QAAQ,CAAC,EACvB,OAAO,EACP,cAAc,EACd,UAAU,EACV,eAAe,EACf,gBAAgB,EAAE,iBAAiB,EACnC,eAAe,EACf,KAAK,EACL,QAAQ,GACT,EAAE,aAAa,2CA4Lf"}
|
|
@@ -1,4 +1,23 @@
|
|
|
1
1
|
import { type CodegenTypes, type ViewProps, type HostComponent, type ColorValue } from 'react-native';
|
|
2
|
+
type Float = CodegenTypes.Float;
|
|
3
|
+
type Int32 = CodegenTypes.Int32;
|
|
4
|
+
type NativeTransitionConfig = Readonly<{
|
|
5
|
+
type: string;
|
|
6
|
+
duration: Int32;
|
|
7
|
+
easingBezier: ReadonlyArray<Float>;
|
|
8
|
+
damping: Float;
|
|
9
|
+
stiffness: Float;
|
|
10
|
+
mass: Float;
|
|
11
|
+
loop: string;
|
|
12
|
+
delay: Int32;
|
|
13
|
+
}>;
|
|
14
|
+
type NativeTransitions = Readonly<{
|
|
15
|
+
defaultConfig: NativeTransitionConfig;
|
|
16
|
+
transform?: NativeTransitionConfig;
|
|
17
|
+
opacity?: NativeTransitionConfig;
|
|
18
|
+
borderRadius?: NativeTransitionConfig;
|
|
19
|
+
backgroundColor?: NativeTransitionConfig;
|
|
20
|
+
}>;
|
|
2
21
|
export interface NativeProps extends ViewProps {
|
|
3
22
|
animatedProperties?: CodegenTypes.WithDefault<CodegenTypes.Int32, 0>;
|
|
4
23
|
animateOpacity?: CodegenTypes.WithDefault<CodegenTypes.Float, 1.0>;
|
|
@@ -21,14 +40,7 @@ export interface NativeProps extends ViewProps {
|
|
|
21
40
|
initialAnimateRotateY?: CodegenTypes.WithDefault<CodegenTypes.Float, 0.0>;
|
|
22
41
|
initialAnimateBorderRadius?: CodegenTypes.WithDefault<CodegenTypes.Float, 0.0>;
|
|
23
42
|
initialAnimateBackgroundColor?: ColorValue;
|
|
24
|
-
|
|
25
|
-
transitionDuration?: CodegenTypes.WithDefault<CodegenTypes.Int32, 300>;
|
|
26
|
-
transitionEasingBezier?: ReadonlyArray<CodegenTypes.Float>;
|
|
27
|
-
transitionDamping?: CodegenTypes.WithDefault<CodegenTypes.Float, 15.0>;
|
|
28
|
-
transitionStiffness?: CodegenTypes.WithDefault<CodegenTypes.Float, 120.0>;
|
|
29
|
-
transitionMass?: CodegenTypes.WithDefault<CodegenTypes.Float, 1.0>;
|
|
30
|
-
transitionLoop?: CodegenTypes.WithDefault<'none' | 'repeat' | 'reverse', 'none'>;
|
|
31
|
-
transitionDelay?: CodegenTypes.WithDefault<CodegenTypes.Int32, 0>;
|
|
43
|
+
transitions?: NativeTransitions;
|
|
32
44
|
transformOriginX?: CodegenTypes.WithDefault<CodegenTypes.Float, 0.5>;
|
|
33
45
|
transformOriginY?: CodegenTypes.WithDefault<CodegenTypes.Float, 0.5>;
|
|
34
46
|
onTransitionEnd?: CodegenTypes.DirectEventHandler<Readonly<{
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"EaseViewNativeComponent.d.ts","sourceRoot":"","sources":["../../../src/EaseViewNativeComponent.ts"],"names":[],"mappings":"AAAA,OAAO,EAEL,KAAK,YAAY,EACjB,KAAK,SAAS,EACd,KAAK,aAAa,EAClB,KAAK,UAAU,EAChB,MAAM,cAAc,CAAC;AAEtB,
|
|
1
|
+
{"version":3,"file":"EaseViewNativeComponent.d.ts","sourceRoot":"","sources":["../../../src/EaseViewNativeComponent.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export { EaseView } from './EaseView';
|
|
2
2
|
export type { EaseViewProps } from './EaseView';
|
|
3
|
-
export type { AnimateProps, CubicBezier, Transition, TimingTransition, SpringTransition, NoneTransition, EasingType, TransitionEndEvent, TransformOrigin, } from './types';
|
|
3
|
+
export type { AnimateProps, CubicBezier, Transition, SingleTransition, TransitionMap, TimingTransition, SpringTransition, NoneTransition, EasingType, TransitionEndEvent, TransformOrigin, } from './types';
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,YAAY,EACV,YAAY,EACZ,WAAW,EACX,UAAU,EACV,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,kBAAkB,EAClB,eAAe,GAChB,MAAM,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AACtC,YAAY,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAChD,YAAY,EACV,YAAY,EACZ,WAAW,EACX,UAAU,EACV,gBAAgB,EAChB,aAAa,EACb,gBAAgB,EAChB,gBAAgB,EAChB,cAAc,EACd,UAAU,EACV,kBAAkB,EAClB,eAAe,GAChB,MAAM,SAAS,CAAC"}
|
|
@@ -31,8 +31,23 @@ export type SpringTransition = {
|
|
|
31
31
|
export type NoneTransition = {
|
|
32
32
|
type: 'none';
|
|
33
33
|
};
|
|
34
|
-
/**
|
|
35
|
-
export type
|
|
34
|
+
/** A single animation transition configuration. */
|
|
35
|
+
export type SingleTransition = TimingTransition | SpringTransition | NoneTransition;
|
|
36
|
+
/** Per-property transition map with category-based keys. */
|
|
37
|
+
export type TransitionMap = {
|
|
38
|
+
/** Fallback config for properties not explicitly listed. */
|
|
39
|
+
default?: SingleTransition;
|
|
40
|
+
/** Config for all transform properties (translateX/Y, scaleX/Y, rotate, rotateX/Y). */
|
|
41
|
+
transform?: SingleTransition;
|
|
42
|
+
/** Config for opacity. */
|
|
43
|
+
opacity?: SingleTransition;
|
|
44
|
+
/** Config for borderRadius. */
|
|
45
|
+
borderRadius?: SingleTransition;
|
|
46
|
+
/** Config for backgroundColor. */
|
|
47
|
+
backgroundColor?: SingleTransition;
|
|
48
|
+
};
|
|
49
|
+
/** Animation transition configuration — either a single config or a per-property map. */
|
|
50
|
+
export type Transition = SingleTransition | TransitionMap;
|
|
36
51
|
/** Event fired when the animation ends. */
|
|
37
52
|
export type TransitionEndEvent = {
|
|
38
53
|
/** True if the animation completed naturally, false if interrupted. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,qDAAqD;AACrD,MAAM,MAAM,WAAW,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAE3D,0CAA0C;AAC1C,MAAM,MAAM,UAAU,GAClB,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,WAAW,GACX,WAAW,CAAC;AAEhB,oEAAoE;AACpE,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,QAAQ,CAAC;IACf,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yCAAyC;IACzC,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,wFAAwF;IACxF,IAAI,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC5B,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,uCAAuC;AACvC,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,QAAQ,CAAC;IACf,+DAA+D;IAC/D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,0EAA0E;IAC1E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gFAAgF;IAChF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,wEAAwE;AACxE,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,cAAc,CAAC;AAE/C,qDAAqD;AACrD,MAAM,MAAM,WAAW,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,CAAC;AAE3D,0CAA0C;AAC1C,MAAM,MAAM,UAAU,GAClB,QAAQ,GACR,QAAQ,GACR,SAAS,GACT,WAAW,GACX,WAAW,CAAC;AAEhB,oEAAoE;AACpE,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,QAAQ,CAAC;IACf,6CAA6C;IAC7C,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yCAAyC;IACzC,MAAM,CAAC,EAAE,UAAU,CAAC;IACpB,wFAAwF;IACxF,IAAI,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;IAC5B,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,uCAAuC;AACvC,MAAM,MAAM,gBAAgB,GAAG;IAC7B,IAAI,EAAE,QAAQ,CAAC;IACf,+DAA+D;IAC/D,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,0EAA0E;IAC1E,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gFAAgF;IAChF,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,oEAAoE;IACpE,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,wEAAwE;AACxE,MAAM,MAAM,cAAc,GAAG;IAC3B,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF,mDAAmD;AACnD,MAAM,MAAM,gBAAgB,GACxB,gBAAgB,GAChB,gBAAgB,GAChB,cAAc,CAAC;AAEnB,4DAA4D;AAC5D,MAAM,MAAM,aAAa,GAAG;IAC1B,4DAA4D;IAC5D,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,uFAAuF;IACvF,SAAS,CAAC,EAAE,gBAAgB,CAAC;IAC7B,0BAA0B;IAC1B,OAAO,CAAC,EAAE,gBAAgB,CAAC;IAC3B,+BAA+B;IAC/B,YAAY,CAAC,EAAE,gBAAgB,CAAC;IAChC,kCAAkC;IAClC,eAAe,CAAC,EAAE,gBAAgB,CAAC;CACpC,CAAC;AAEF,yFAAyF;AACzF,MAAM,MAAM,UAAU,GAAG,gBAAgB,GAAG,aAAa,CAAC;AAE1D,2CAA2C;AAC3C,MAAM,MAAM,kBAAkB,GAAG;IAC/B,uEAAuE;IACvE,QAAQ,EAAE,OAAO,CAAC;CACnB,CAAC;AAEF,uEAAuE;AACvE,MAAM,MAAM,eAAe,GAAG;IAC5B,yEAAyE;IACzE,CAAC,CAAC,EAAE,MAAM,CAAC;IACX,uEAAuE;IACvE,CAAC,CAAC,EAAE,MAAM,CAAC;CACZ,CAAC;AAEF,2FAA2F;AAC3F,MAAM,MAAM,YAAY,GAAG;IACzB,qCAAqC;IACrC,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,mDAAmD;IACnD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,iDAAiD;IACjD,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,uEAAuE;IACvE,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,4EAA4E;IAC5E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,0EAA0E;IAC1E,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6CAA6C;IAC7C,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,kDAAkD;IAClD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,kDAAkD;IAClD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,0IAA0I;IAC1I,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,qFAAqF;IACrF,eAAe,CAAC,EAAE,UAAU,CAAC;CAC9B,CAAC"}
|
package/package.json
CHANGED
|
@@ -52,7 +52,9 @@ Apply these checks in order. The first match determines the result:
|
|
|
52
52
|
2. **Uses scroll handler?** (`useAnimatedScrollHandler`, `onScroll` with `Animated.event`) → NOT migratable — "Scroll-driven animation"
|
|
53
53
|
3. **Uses shared element transitions?** (`sharedTransitionTag`) → NOT migratable — "Shared element transition"
|
|
54
54
|
4. **Uses `runOnUI` or worklet directives?** → NOT migratable — "Requires worklet runtime"
|
|
55
|
-
5. **Uses `withSequence
|
|
55
|
+
5. **Uses `withSequence`?** → NOT migratable — "Animation sequencing not supported"
|
|
56
|
+
5b. **Uses `withDelay` wrapping a single animation (`withTiming`/`withSpring`)?** → MIGRATABLE — map to `delay` on the transition
|
|
57
|
+
5c. **Uses `withDelay` wrapping `withSequence` or nested `withDelay`?** → NOT migratable — "Complex delay/sequencing not supported"
|
|
56
58
|
6. **Uses complex `interpolate()`?** (more than 2 input/output values) → NOT migratable — "Complex interpolation"
|
|
57
59
|
7. **Uses `layout={...}` prop?** → NOT migratable — "Layout animation"
|
|
58
60
|
8. **Animates unsupported properties?** (anything besides: opacity, translateX, translateY, scale, scaleX, scaleY, rotate, rotateX, rotateY, borderRadius, backgroundColor) → NOT migratable — "Animates unsupported property: `<prop>`"
|
|
@@ -83,6 +85,8 @@ Use this table to convert Reanimated/Animated patterns to EaseView:
|
|
|
83
85
|
| `Easing.bezier(x1, y1, x2, y2)` | `easing: [x1, y1, x2, y2]` |
|
|
84
86
|
| `Animated.Value` + `Animated.timing` | Same `animate` + `transition` pattern — convert to state-driven |
|
|
85
87
|
| `Animated.Value` + `Animated.spring` | `animate` + `transition={{ type: 'spring' }}` — convert to state-driven |
|
|
88
|
+
| `withDelay(ms, withTiming(...))` or `withDelay(ms, withSpring(...))` | `transition={{ ..., delay: ms }}` — add `delay` to the transition config |
|
|
89
|
+
| `entering={FadeIn.delay(ms)}` / any entering preset with `.delay()` | `initialAnimate` + `animate` + `transition={{ ..., delay: ms }}` |
|
|
86
90
|
|
|
87
91
|
### Default Value Mapping
|
|
88
92
|
|
|
@@ -360,6 +364,7 @@ transition={{
|
|
|
360
364
|
type: 'timing',
|
|
361
365
|
duration: 300, // ms, default 300
|
|
362
366
|
easing: 'easeInOut', // 'linear' | 'easeIn' | 'easeOut' | 'easeInOut' | [x1,y1,x2,y2]
|
|
367
|
+
delay: 0, // ms, default 0
|
|
363
368
|
loop: 'repeat', // 'repeat' | 'reverse' — requires initialAnimate
|
|
364
369
|
}}
|
|
365
370
|
```
|
|
@@ -372,6 +377,7 @@ transition={{
|
|
|
372
377
|
damping: 15, // default 15
|
|
373
378
|
stiffness: 120, // default 120
|
|
374
379
|
mass: 1, // default 1
|
|
380
|
+
delay: 0, // ms, default 0
|
|
375
381
|
}}
|
|
376
382
|
```
|
|
377
383
|
|
|
@@ -394,6 +400,6 @@ transition={{ type: 'none' }}
|
|
|
394
400
|
|
|
395
401
|
- **Loop requires timing** (not spring) and `initialAnimate` must define the start value
|
|
396
402
|
- **No per-property transitions** — one transition config applies to all animated properties
|
|
397
|
-
- **No animation sequencing** — no equivalent to `withSequence
|
|
403
|
+
- **No animation sequencing** — no equivalent to `withSequence`. Simple `withDelay` IS supported via the `delay` transition prop
|
|
398
404
|
- **No gesture/scroll-driven animations** — EaseView is state-driven only
|
|
399
405
|
- **Style/animate conflict** — if a property appears in both `style` and `animate`, the animated value wins
|