UNPKG

core-cde

Version:

62 lines 1.94 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.PageInfo = void 0; const Events_module_1 = require("../../events/Events.module"); class PageInfo { /** * Конструктор. Не предназначен для использования внешним кодом. * Следует использовать PageInfo.createNew() */ constructor() { this._pageIndex = 0; this._pageSize = -1; this._onPropertyChanged = new Events_module_1.EventDispatcher(); } static createNew(pageIndex, pageSize) { const res = new PageInfo(); res._pageIndex = pageIndex; res._pageSize = pageSize; return res; } static fromJSON(json) { if (typeof json === 'string') { return PageInfo.fromJSON(JSON.parse(json)); } else { const pi = new PageInfo(); return Object.assign(pi, json, {}); } } toJSON() { return Object.assign({}, null, { pageIndex: this.pageIndex, pageSize: this.pageSize }); } get onPropertyChanged() { return this._onPropertyChanged; } get pageIndex() { return this._pageIndex; } set pageIndex(value) { if (this._pageIndex !== value) { this._pageIndex = value; this.raisePropertyChanged('pageIndex'); } } get pageSize() { return this._pageSize; } set pageSize(value) { if (this._pageSize !== value) { this._pageSize = value; this.raisePropertyChanged('pageSize'); } } raisePropertyChanged(propertyName) { this.onPropertyChanged.dispatch(new Events_module_1.PropertyChangedArg(this, propertyName)); } } exports.PageInfo = PageInfo; //# sourceMappingURL=PageInfo.js.map