UNPKG

@remotion/player

Version:

React component for embedding a Remotion preview into your app

23 lines (22 loc) 557 B
export const cancellablePromise = (promise) => { let isCanceled = false; const wrappedPromise = new Promise((resolve, reject) => { promise .then((value) => { if (isCanceled) { reject({ isCanceled, value }); return; } resolve(value); }) .catch((error) => { reject({ isCanceled, error }); }); }); return { promise: wrappedPromise, cancel: () => { isCanceled = true; }, }; };