UNPKG

devextreme

Version:

JavaScript/TypeScript Component Suite for Responsive Web Development

33 lines (32 loc) 994 B
/** * DevExtreme (cjs/__internal/scheduler/utils/macro_task_array/dispatcher.js) * Version: 25.2.7 * Build date: Tue May 05 2026 * * Copyright (c) 2012 - 2026 Developer Express Inc. ALL RIGHTS RESERVED * Read about DevExtreme licensing here: https://js.devexpress.com/Licensing/ */ "use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.macroTaskIdSet = exports.default = void 0; const macroTaskIdSet = exports.macroTaskIdSet = new Set; const schedule = async (callback, macroTaskTimeoutMs) => new Promise(resolve => { const taskId = setTimeout(() => { callback(); macroTaskIdSet.delete(taskId); resolve() }, macroTaskTimeoutMs); macroTaskIdSet.add(taskId) }); const dispose = () => { Array.from(macroTaskIdSet).forEach(id => { clearTimeout(id); macroTaskIdSet.delete(id) }) }; var _default = exports.default = { schedule: schedule, dispose: dispose };