Allow Animation EndResult callback to return Promise (#25793)

Summary:
I am sending an asynchronous function as callback to the `.start` method of `Animation.parallel([...]).start(callback)`. Flow does not like this, as the `EndCallback` type is saying that these callbacks must return `void`. Since my callback returns `Promise<void>` this results in an error.

Does it really matter what the callback returns?

## Changelog

[General] [Changed] - Make Animation EndCallback type allow any return value
Pull Request resolved: https://github.com/facebook/react-native/pull/25793

Test Plan: I have run `yarn flow`, which reported no errors.

Reviewed By: cpojer

Differential Revision: D16515465

Pulled By: osdnk

fbshipit-source-id: 420d29d262b65471e6e1ad4b5a126bf728336260
This commit is contained in:
Mats Byrkjeland 2019-07-26 03:38:03 -07:00 коммит произвёл Facebook Github Bot
Родитель e78c01375a
Коммит bb623e6983
2 изменённых файлов: 2 добавлений и 2 удалений

Просмотреть файл

@ -14,7 +14,7 @@ import type {TurboModule} from '../../TurboModule/RCTExport';
import * as TurboModuleRegistry from '../../TurboModule/TurboModuleRegistry';
type EndResult = {finished: boolean};
type EndCallback = (result: EndResult) => void;
type EndCallback = (result: EndResult) => void | Promise<void>;
export type EventMapping = {|
nativeEventPath: Array<string>,

Просмотреть файл

@ -14,7 +14,7 @@ const NativeAnimatedHelper = require('../NativeAnimatedHelper');
import type AnimatedValue from '../nodes/AnimatedValue';
export type EndResult = {finished: boolean};
export type EndCallback = (result: EndResult) => void;
export type EndCallback = (result: EndResult) => void | Promise<void>;
export type AnimationConfig = {
isInteraction?: boolean,