123456789101112131415161718192021222324252627 |
- import { Subscription } from '../Subscription';
- export const animationFrameProvider = {
- schedule(callback) {
- let request = requestAnimationFrame;
- let cancel = cancelAnimationFrame;
- const { delegate } = animationFrameProvider;
- if (delegate) {
- request = delegate.requestAnimationFrame;
- cancel = delegate.cancelAnimationFrame;
- }
- const handle = request((timestamp) => {
- cancel = undefined;
- callback(timestamp);
- });
- return new Subscription(() => cancel === null || cancel === void 0 ? void 0 : cancel(handle));
- },
- requestAnimationFrame(...args) {
- const { delegate } = animationFrameProvider;
- return ((delegate === null || delegate === void 0 ? void 0 : delegate.requestAnimationFrame) || requestAnimationFrame)(...args);
- },
- cancelAnimationFrame(...args) {
- const { delegate } = animationFrameProvider;
- return ((delegate === null || delegate === void 0 ? void 0 : delegate.cancelAnimationFrame) || cancelAnimationFrame)(...args);
- },
- delegate: undefined,
- };
- //# sourceMappingURL=animationFrameProvider.js.map
|