Fixed an issue when the user could break the pagination settings validation by switching between the basic/advanced mode tabs in table-widgets
This commit is contained in:
parent
d6fb28ebd7
commit
49289da5a8
@ -392,10 +392,12 @@ export class AlarmsTableWidgetComponent extends PageComponent implements OnInit,
|
||||
this.rowStylesInfo = getRowStyleInfo(this.ctx, this.settings, 'alarm, ctx');
|
||||
|
||||
const pageSize = this.settings.defaultPageSize;
|
||||
let pageStepIncrement = this.settings.pageStepIncrement;
|
||||
let pageStepCount = this.settings.pageStepCount;
|
||||
let pageStepIncrement = Number.isInteger(this.settings.pageStepIncrement) && this.settings.pageStepIncrement > 0 ?
|
||||
this.settings.pageStepIncrement : null;
|
||||
let pageStepCount = Number.isInteger(this.settings.pageStepCount) && this.settings.pageStepCount > 0
|
||||
&& this.settings.pageStepCount <= 100 ? this.settings.pageStepCount : null;
|
||||
|
||||
if (isDefined(pageSize) && isNumber(pageSize) && pageSize > 0) {
|
||||
if (Number.isInteger(pageSize) && pageSize > 0) {
|
||||
this.defaultPageSize = pageSize;
|
||||
}
|
||||
|
||||
|
||||
@ -311,10 +311,12 @@ export class EntitiesTableWidgetComponent extends PageComponent implements OnIni
|
||||
this.rowStylesInfo = getRowStyleInfo(this.ctx, this.settings, 'entity, ctx');
|
||||
|
||||
const pageSize = this.settings.defaultPageSize;
|
||||
let pageStepIncrement = this.settings.pageStepIncrement;
|
||||
let pageStepCount = this.settings.pageStepCount;
|
||||
let pageStepIncrement = Number.isInteger(this.settings.pageStepIncrement) && this.settings.pageStepIncrement > 0 ?
|
||||
this.settings.pageStepIncrement : null;
|
||||
let pageStepCount = Number.isInteger(this.settings.pageStepCount) && this.settings.pageStepCount > 0
|
||||
&& this.settings.pageStepCount <= 100 ? this.settings.pageStepCount : null;
|
||||
|
||||
if (isDefined(pageSize) && isNumber(pageSize) && pageSize > 0) {
|
||||
if (Number.isInteger(pageSize) && pageSize > 0) {
|
||||
this.defaultPageSize = pageSize;
|
||||
}
|
||||
|
||||
|
||||
@ -207,10 +207,12 @@ export class PersistentTableComponent extends PageComponent implements OnInit, O
|
||||
this.displayedColumns = [...this.displayTableColumns];
|
||||
|
||||
const pageSize = this.settings.defaultPageSize;
|
||||
let pageStepIncrement = this.settings.pageStepIncrement;
|
||||
let pageStepCount = this.settings.pageStepCount;
|
||||
let pageStepIncrement = Number.isInteger(this.settings.pageStepIncrement) && this.settings.pageStepIncrement > 0 ?
|
||||
this.settings.pageStepIncrement : null;
|
||||
let pageStepCount = Number.isInteger(this.settings.pageStepCount) && this.settings.pageStepCount > 0
|
||||
&& this.settings.pageStepCount <= 100 ? this.settings.pageStepCount : null;
|
||||
|
||||
if (isDefined(pageSize) && isNumber(pageSize) && pageSize > 0) {
|
||||
if (Number.isInteger(pageSize) && pageSize > 0) {
|
||||
this.defaultPageSize = pageSize;
|
||||
}
|
||||
|
||||
|
||||
@ -16,7 +16,7 @@
|
||||
|
||||
import { EntityId } from '@shared/models/id/entity-id';
|
||||
import { DataKey, FormattedData, WidgetActionDescriptor, WidgetConfig } from '@shared/models/widget.models';
|
||||
import { getDescendantProp, isDefined, isDefinedAndNotNull, isNotEmptyStr } from '@core/utils';
|
||||
import { getDescendantProp, isDefined, isNotEmptyStr } from '@core/utils';
|
||||
import { AlarmDataInfo, alarmFields } from '@shared/models/alarm.models';
|
||||
import tinycolor from 'tinycolor2';
|
||||
import { Direction } from '@shared/models/page/sort-order';
|
||||
@ -564,8 +564,8 @@ export function getHeaderTitle(dataKey: DataKey, keySettings: TableWidgetDataKey
|
||||
|
||||
export function buildPageStepSizeValues(pageStepCount: number, pageStepIncrement: number): Array<number> {
|
||||
const pageSteps: Array<number> = [];
|
||||
if (isDefinedAndNotNull(pageStepCount) && pageStepCount > 0 && pageStepCount <= 100 &&
|
||||
isDefinedAndNotNull(pageStepIncrement) && pageStepIncrement > 0) {
|
||||
if (Number.isInteger(pageStepCount) && pageStepCount > 0 && pageStepCount <= 100 &&
|
||||
Number.isInteger(pageStepIncrement) && pageStepIncrement > 0) {
|
||||
for (let i = 1; i <= pageStepCount; i++) {
|
||||
pageSteps.push(pageStepIncrement * i);
|
||||
}
|
||||
|
||||
@ -352,10 +352,12 @@ export class TimeseriesTableWidgetComponent extends PageComponent implements OnI
|
||||
this.rowStylesInfo = getRowStyleInfo(this.ctx, this.settings, 'rowData, ctx');
|
||||
|
||||
const pageSize = this.settings.defaultPageSize;
|
||||
let pageStepIncrement = this.settings.pageStepIncrement;
|
||||
let pageStepCount = this.settings.pageStepCount;
|
||||
let pageStepIncrement = Number.isInteger(this.settings.pageStepIncrement) && this.settings.pageStepIncrement > 0 ?
|
||||
this.settings.pageStepIncrement : null;
|
||||
let pageStepCount = Number.isInteger(this.settings.pageStepCount) && this.settings.pageStepCount > 0
|
||||
&& this.settings.pageStepCount <= 100 ? this.settings.pageStepCount : null;
|
||||
|
||||
if (isDefined(pageSize) && isNumber(pageSize) && pageSize > 0) {
|
||||
if (Number.isInteger(pageSize) && pageSize > 0) {
|
||||
this.defaultPageSize = pageSize;
|
||||
}
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user