UNPKG

devextreme

Version:

HTML5 JavaScript Component Suite for Responsive Web Development

35 lines (34 loc) 1.1 kB
/** * DevExtreme (esm/renovation/ui/scroll_view/utils/subscribe_to_resize.js) * Version: 22.1.9 * Build date: Tue Apr 18 2023 * * Copyright (c) 2012 - 2023 Developer Express Inc. ALL RIGHTS RESERVED * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/ */ import resizeObserverSingleton from "../../../../core/resize_observer"; import { hasWindow } from "../../../../core/utils/window"; import { requestAnimationFrame, cancelAnimationFrame } from "../../../../animation/frame"; export function subscribeToResize(element, handler) { if (hasWindow() && element) { var resizeAnimationFrameID = -1; resizeObserverSingleton.observe(element, _ref => { var { target: target } = _ref; resizeAnimationFrameID = requestAnimationFrame(() => { handler(target) }) }); return () => { cancelAnimationFrame(resizeAnimationFrameID); resizeObserverSingleton.unobserve(element) } } return }