UNPKG

devextreme

Version:

HTML5 JavaScript Component Suite for Responsive Web Development

35 lines (34 loc) 1.06 kB
/** * DevExtreme (esm/__internal/core/environment/hide_callback.js) * Version: 25.2.3 * Build date: Fri Dec 12 2025 * * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/ */ export const hideCallback = function() { let callbacks = []; return { add(callback) { if (!callbacks.includes(callback)) { callbacks.push(callback) } }, remove(callback) { const indexOfCallback = callbacks.indexOf(callback); if (-1 !== indexOfCallback) { callbacks.splice(indexOfCallback, 1) } }, fire() { const callback = callbacks.pop(); const result = !!callback; if (result) { callback() } return result }, hasCallback: () => callbacks.length > 0 } }(); export const fireCallback = () => hideCallback.fire();