( drag: Animated.Node<number>, state: Animated.Node<number> )
| 225 | } |
| 226 | |
| 227 | function withPreservingAdditiveOffset( |
| 228 | drag: Animated.Node<number>, |
| 229 | state: Animated.Node<number> |
| 230 | ) { |
| 231 | const prev = new Value(0) |
| 232 | const valWithPreservedOffset = new Value(0) |
| 233 | return block([ |
| 234 | cond( |
| 235 | eq(state, GestureState.BEGAN), |
| 236 | [set(prev, 0)], |
| 237 | [ |
| 238 | set( |
| 239 | valWithPreservedOffset, |
| 240 | add(valWithPreservedOffset, sub(drag, prev)) |
| 241 | ), |
| 242 | set(prev, drag), |
| 243 | ] |
| 244 | ), |
| 245 | valWithPreservedOffset, |
| 246 | ]) |
| 247 | } |
| 248 | |
| 249 | function withDecaying( |
| 250 | drag: Animated.Node<number>, |