devextreme
Version:
HTML5 JavaScript Component Suite for Responsive Web Development
153 lines (151 loc) • 5.51 kB
JavaScript
/**
* DevExtreme (cjs/__internal/grids/tree_list/m_widget_base.js)
* Version: 23.2.6
* Build date: Wed May 01 2024
*
* Copyright (c) 2012 - 2024 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.default = void 0;
require("./module_not_extended/column_headers");
require("./m_columns_controller");
require("./data_controller/m_data_controller");
require("./module_not_extended/sorting");
require("./rows/m_rows");
require("./module_not_extended/context_menu");
require("./module_not_extended/error_handling");
require("./m_grid_view");
require("./module_not_extended/header_panel");
var _component_registrator = _interopRequireDefault(require("../../../core/component_registrator"));
var _common = require("../../../core/utils/common");
var _extend = require("../../../core/utils/extend");
var _iterator = require("../../../core/utils/iterator");
var _type = require("../../../core/utils/type");
var _themes = require("../../../ui/themes");
var _ui = _interopRequireDefault(require("../../../ui/widget/ui.widget"));
var _m_utils = _interopRequireDefault(require("../../grids/grid_core/m_utils"));
var _m_core = _interopRequireDefault(require("./m_core"));
function _interopRequireDefault(obj) {
return obj && obj.__esModule ? obj : {
default: obj
}
}
const {
callModuleItemsMethod: callModuleItemsMethod
} = _m_core.default;
const DATAGRID_ROW_SELECTOR = ".dx-row";
const TREELIST_CLASS = "dx-treelist";
_m_core.default.registerModulesOrder(["stateStoring", "columns", "selection", "editorFactory", "columnChooser", "editingRowBased", "editingFormBased", "editingCellBased", "editing", "grouping", "masterDetail", "validating", "adaptivity", "data", "virtualScrolling", "columnHeaders", "filterRow", "headerPanel", "headerFilter", "sorting", "search", "rows", "pager", "columnsResizingReordering", "contextMenu", "keyboardNavigation", "errorHandling", "summary", "columnFixing", "export", "gridView"]);
const TreeList = _ui.default.inherit({
_activeStateUnit: ".dx-row",
_getDefaultOptions() {
const result = this.callBase();
(0, _iterator.each)(_m_core.default.modules, (function() {
if ((0, _type.isFunction)(this.defaultOptions)) {
(0, _extend.extend)(true, result, this.defaultOptions())
}
}));
return result
},
_setDeprecatedOptions() {
this.callBase();
(0, _extend.extend)(this._deprecatedOptions, {
"columnChooser.allowSearch": {
since: "23.1",
message: 'Use the "columnChooser.search.enabled" option instead'
},
"columnChooser.searchTimeout": {
since: "23.1",
message: 'Use the "columnChooser.search.timeout" option instead'
}
})
},
_defaultOptionsRules() {
return this.callBase().concat([{
device: () => (0, _themes.isMaterialBased)(),
options: {
showRowLines: true,
showColumnLines: false,
headerFilter: {
height: 315
},
editing: {
useIcons: true
}
}
}])
},
_init() {
this.callBase();
if (!this.option("_disableDeprecationWarnings")) {
_m_utils.default.logHeaderFilterDeprecatedWarningIfNeed(this)
}
_m_core.default.processModules(this, _m_core.default);
callModuleItemsMethod(this, "init")
},
_clean: _common.noop,
_optionChanged(args) {
const that = this;
callModuleItemsMethod(that, "optionChanged", [args]);
if (!args.handled) {
that.callBase(args)
}
},
_dimensionChanged() {
this.updateDimensions(true)
},
_visibilityChanged(visible) {
if (visible) {
this.updateDimensions()
}
},
_initMarkup() {
this.callBase.apply(this, arguments);
this.$element().addClass("dx-treelist");
this.getView("gridView").render(this.$element())
},
_renderContentImpl() {
this.getView("gridView").update()
},
_renderContent() {
const that = this;
(0, _common.deferRender)(() => {
that._renderContentImpl()
})
},
_dispose() {
this.callBase();
callModuleItemsMethod(this, "dispose")
},
isReady() {
return this.getController("data").isReady()
},
beginUpdate() {
this.callBase();
callModuleItemsMethod(this, "beginUpdate")
},
endUpdate() {
callModuleItemsMethod(this, "endUpdate");
this.callBase()
},
getController(name) {
return this._controllers[name]
},
getView(name) {
return this._views[name]
},
focus(element) {
this.callBase();
if ((0, _type.isDefined)(element)) {
this.getController("keyboardNavigation").focus(element)
}
}
});
TreeList.registerModule = _m_core.default.registerModule.bind(_m_core.default);
(0, _component_registrator.default)("dxTreeList", TreeList);
var _default = TreeList;
exports.default = _default;