UNPKG

@atlaskit/popup

Version:

A popup displays brief content in an overlay.

32 lines (31 loc) 983 B
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.useAnimationFrame = void 0; var _react = require("react"); var useAnimationFrame = exports.useAnimationFrame = function useAnimationFrame() { var animationsRef = (0, _react.useRef)([]); var requestFrame = (0, _react.useCallback)(function (callback) { var id = requestAnimationFrame(callback); animationsRef.current.push(id); return id; }, []); var cancelFrame = (0, _react.useCallback)(function (id) { cancelAnimationFrame(id); animationsRef.current = animationsRef.current.filter(function (frameId) { return frameId !== id; }); }, []); var cancelAllFrames = (0, _react.useCallback)(function () { animationsRef.current.forEach(function (id) { return cancelAnimationFrame(id); }); animationsRef.current = []; }, []); return { requestFrame: requestFrame, cancelFrame: cancelFrame, cancelAllFrames: cancelAllFrames }; };