UNPKG

devexpress-reporting

Version:

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

61 lines (60 loc) 2.93 kB
/** * DevExpress HTML/JS Reporting (viewer\editing\models\editingFieldBase.js) * Version: 24.2.7 * Build date: Apr 29, 2025 * Copyright (c) 2012 - 2025 Developer Express Inc. ALL RIGHTS RESERVED * License: https://www.devexpress.com/Support/EULAs/universal.xml */ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) { var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r; return c > 3 && r && Object.defineProperty(target, key, r), r; }; import { BaseRenderingModel, createViewModelGenerator, mutable } from '@devexpress/analytics-core/analytics-serializer-native'; import { $unwrap } from '@devexpress/analytics-core/analytics-internal-native'; export class EditingFieldBase extends BaseRenderingModel { deferredUpdateViewModel() { return false; } constructor(page) { super(); this.canActivateEditor = false; this.zoom = page.zoom; this.addDisposable(page.events.on('zoomChanged', (args) => { this.zoom = page.zoom; })); } createViewModel() { return createViewModelGenerator(super.createViewModel()) .generateProperty('zoom', this.zoom) .generateProperty('template', this.template) .generateProperty('field', this.field.getViewModel()) .generateProperty('setEditingFieldElement', (elt) => this.editingFieldElement = $unwrap(elt)) .generateProperty('canActivateEditor', this.canActivateEditor) .generateProperty('activateEditor', (viewModel, event) => this.activateEditor(viewModel.getModel(), event)) .generateProperty('onClick', (viewModel, event) => this.onClick(viewModel.getModel(), event)) .generateProperty('containerStyle', this.containerStyle) .generateProperty('active', this.active) .getViewModel(); } updateViewModel(args) { const viewModel = this.getViewModel(); if (args.propertyName === 'zoom') viewModel.zoom = this.zoom; if (args.propertyName === 'active') viewModel.active = this.active; if (args.propertyName === 'containerStyle') viewModel.containerStyle = this.containerStyle; } onPropertyChanged(args) { } activateEditor(model, event) { } onClick(model, event) { } } __decorate([ mutable(null) ], EditingFieldBase.prototype, "containerStyle", void 0); __decorate([ mutable(1) ], EditingFieldBase.prototype, "zoom", void 0); __decorate([ mutable(false) ], EditingFieldBase.prototype, "active", void 0);