UNPKG

cometchat-react-ui-kit2

Version:

CometChat UI Kit for React App

39 lines (38 loc) 1.27 kB
"use strict"; var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault"); Object.defineProperty(exports, "__esModule", { value: true }); exports.Hooks = void 0; var _react = _interopRequireDefault(require("react")); var Hooks = function Hooks(props, setItemsHandler, parentElement, timer, items) { _react["default"].useEffect(function () { requestAnimation(); setItemsHandler(); return function () { timer.current = null; }; }, [parentElement]); var requestAnimation = function requestAnimation() { timer.current = setTimeout(animate, 1000 / 60); }; var animate = function animate() { if (!parentElement) { return false; } var height = parentElement === null || parentElement === void 0 ? void 0 : parentElement.offsetHeight; var time = +new Date(); for (var i = 0; i < items.length; i++) { var item = items[i]; var transformString = "translate3d(" + item.x(time) + "px, " + item.y + "px, 0px)"; item.element.style.transform = transformString; item.element.style.visibility = "visible"; if (item.y <= height) { item.element.classList.add("fade"); } item.y += item.ySpeed; } requestAnimation(); }; }; exports.Hooks = Hooks;