UNPKG

devextreme

Version:

HTML5 JavaScript Component Suite for Responsive Web Development

51 lines (50 loc) 2.45 kB
/** * DevExtreme (cjs/__internal/grids/tree_list/module_virtual_scrolling.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/ */ "use strict"; var __importDefault = this && this.__importDefault || function(mod) { return mod && mod.__esModule ? mod : { default: mod } }; Object.defineProperty(exports, "__esModule", { value: true }); var extend_1 = require("../../../core/utils/extend"); var ui_grid_core_virtual_scrolling_1 = require("../../../ui/grid_core/ui.grid_core.virtual_scrolling"); var module_core_1 = __importDefault(require("./module_core")); var module_1 = __importDefault(require("./data_source_adapter/module")); var oldDefaultOptions = ui_grid_core_virtual_scrolling_1.virtualScrollingModule.defaultOptions; var originalDataControllerExtender = ui_grid_core_virtual_scrolling_1.virtualScrollingModule.extenders.controllers.data; var originalDataSourceAdapterExtender = ui_grid_core_virtual_scrolling_1.virtualScrollingModule.extenders.dataSourceAdapter; ui_grid_core_virtual_scrolling_1.virtualScrollingModule.extenders.controllers.data = extend_1.extend({}, originalDataControllerExtender, { _loadOnOptionChange: function() { var virtualScrollController = this._dataSource && this._dataSource._virtualScrollController; virtualScrollController && virtualScrollController.reset(); this.callBase() } }); ui_grid_core_virtual_scrolling_1.virtualScrollingModule.extenders.dataSourceAdapter = extend_1.extend({}, originalDataSourceAdapterExtender, { changeRowExpand: function() { var _this = this; return this.callBase.apply(this, arguments).done((function() { var viewportItemIndex = _this.getViewportItemIndex(); viewportItemIndex >= 0 && _this.setViewportItemIndex(viewportItemIndex) })) } }); module_core_1.default.registerModule("virtualScrolling", extend_1.extend({}, ui_grid_core_virtual_scrolling_1.virtualScrollingModule, { defaultOptions: function() { return extend_1.extend(true, oldDefaultOptions(), { scrolling: { mode: "virtual" } }) } })); module_1.default.extend(ui_grid_core_virtual_scrolling_1.virtualScrollingModule.extenders.dataSourceAdapter);