UNPKG

devexpress-reporting

Version:

DevExpress Reporting provides the capability to develop a reporting application to create and customize reports.

137 lines (136 loc) 6.24 kB
/** * DevExpress HTML/JS Reporting (designer\wizard\pages\legacy\selectColumnsPage.js) * Version: 20.2.13 * Build date: Apr 10, 2023 * Copyright (c) 2012 - 2023 Developer Express Inc. ALL RIGHTS RESERVED * License: https://www.devexpress.com/Support/EULAs/universal.xml */ "use strict"; var __extends = (this && this.__extends) || (function () { var extendStatics = function (d, b) { extendStatics = Object.setPrototypeOf || ({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) || function (d, b) { for (var p in b) if (b.hasOwnProperty(p)) d[p] = b[p]; }; return extendStatics(d, b); }; return function (d, b) { extendStatics(d, b); function __() { this.constructor = d; } d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __()); }; })(); Object.defineProperty(exports, "__esModule", { value: true }); var chooseAvailableDataSourcePage_1 = require("../chooseAvailableDataSourcePage"); var _utils_1 = require("../../_utils"); var pageId_1 = require("../../pageId"); var analytics_utils_1 = require("@devexpress/analytics-core/analytics-utils"); var analytics_wizard_1 = require("@devexpress/analytics-core/analytics-wizard"); var $ = require("jquery"); var LegacySelectColumnsPage = (function (_super) { __extends(LegacySelectColumnsPage, _super); function LegacySelectColumnsPage(getFieldListItems) { var _this = _super.call(this) || this; _this._selectedPath = null; _this._fields = []; _this.select = function () { _this.selectedFields.add(_this.availableFields.activeItem); _this.availableFields.removeActiveItem(); }; _this.selectAll = function () { _this.selectedFields.setItems(_this._fields.slice(0)); _this.availableFields.removeAll(); }; _this.unselect = function () { _this.availableFields.add(_this.selectedFields.activeItem); _this.selectedFields.removeActiveItem(); }; _this.unselectAll = function () { _this.availableFields.setItems(_this._fields.slice(0)); _this.selectedFields.removeAll(); }; _this.availableFieldDblClick = function (field) { _this.availableFields.activeItem = field; _this.select(); }; _this.availableFieldClick = function (e) { _this.availableFields.activeItem = e.itemData; }; _this.selectedFieldDblClick = function (field) { _this.selectedFields.activeItem = field; _this.unselect(); }; _this.selectedFieldClick = function (e) { _this.selectedFields.activeItem = e.itemData; }; _this.availableFields = new _utils_1.ListViewModel(analytics_utils_1.getLocalization('Available fields', 'ASPxReportsStringId.ReportDesigner_Wizard_AvailableFields')); _this.selectedFields = new _utils_1.ListViewModel(analytics_utils_1.getLocalization('Selected fields', 'ASPxReportsStringId.ReportDesigner_Wizard_SelectedFields')); _this._fieldListsCallback = getFieldListItems; return _this; } LegacySelectColumnsPage.prototype.canFinish = function () { return true; }; LegacySelectColumnsPage.prototype.canNext = function () { return !this.selectedFields.isEmpty; }; LegacySelectColumnsPage.prototype.selectedPath = function () { return this._selectedPath; }; LegacySelectColumnsPage.prototype.reset = function () { this._selectedPath = null; }; LegacySelectColumnsPage.prototype.initialize = function (state) { var _this = this; this.selectedFields.setItems(state.fields || []); if (this._selectedPath != state.dataMemberPath) { return this._fieldListsCallback(new analytics_utils_1.PathRequest(state.dataMemberPath), chooseAvailableDataSourcePage_1._restoreDataSourceFromState(state.newDataSource || state.dataSource)) .done(function (fields) { _this._fields = fields.filter(function (item) { return (item.specifics !== 'List' && item.specifics !== 'ListSource' && item.isList !== true); }); _this._selectedPath = state.dataMemberPath; _this.availableFields.setItems(_this._fields.filter(function (value) { return _this.selectedFields.items.indexOf(value) === -1; })); }); } else { this.availableFields.setItems(this._fields.filter(function (value) { return _this.selectedFields.items.indexOf(value) === -1; })); return $.Deferred().resolve().promise(); } }; LegacySelectColumnsPage.prototype.commit = function () { return $.Deferred().resolve({ fields: this.selectedFields.items }).promise(); }; LegacySelectColumnsPage.prototype.isSelectEnable = function () { return !!this.availableFields.activeItem; }; LegacySelectColumnsPage.prototype.isUnselectEnable = function () { return !!this.selectedFields.activeItem; }; return LegacySelectColumnsPage; }(analytics_wizard_1.WizardPageBase)); exports.LegacySelectColumnsPage = LegacySelectColumnsPage; function _registerLegacySelectColumnsPage(factory, fieldListItemsCallback) { factory.registerMetadata(pageId_1.LegacyReportWizardPageId.SelectColumnsPage, { setState: function (data, state) { state.fields = data.fields; }, getState: function (state) { return state; }, resetState: function (state, defaultState) { state.fields = defaultState.fields; }, create: function () { return new LegacySelectColumnsPage(fieldListItemsCallback); }, template: 'dxrd-page-columns', description: analytics_utils_1.getLocalization('Select the columns you want to display within your report.', 'ASPxReportsStringId.ReportDesigner_Wizard_ChooseColumns') }); } exports._registerLegacySelectColumnsPage = _registerLegacySelectColumnsPage;