UNPKG

devextreme

Version:

JavaScript/TypeScript Component Suite for Responsive Web Development

55 lines (51 loc) 1.49 kB
/** * DevExtreme (cjs/__internal/scheduler/loading.js) * Version: 26.1.3 * Build date: Wed Jun 10 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.hide = hide; exports.show = show; var _renderer = _interopRequireDefault(require("../../core/renderer")); var _view_port = require("../../core/utils/view_port"); var _load_panel = _interopRequireDefault(require("../../ui/load_panel")); function _interopRequireDefault(e) { return e && e.__esModule ? e : { default: e } } let loading = null; const createLoadPanel = options => { const $container = (0, _renderer.default)("<div>").appendTo((null === options || void 0 === options ? void 0 : options.container) ?? (0, _view_port.value)()); return new _load_panel.default($container.get(0), options) }; const removeLoadPanel = () => { if (!loading) { return } loading.$element().remove(); loading = null }; function show(options) { removeLoadPanel(); loading = createLoadPanel(options); return loading.show() } function hide() { if (!loading) { return Promise.resolve(void 0) } const instance = loading; return instance.hide().then(result => { if (loading === instance) { removeLoadPanel() } return result }) }