Browse Source

Fixed an issue when the user could break the pagination settings validation by switching between the basic/advanced mode tabs in table-widgets

pull/13253/head
Tarnavskiy 1 year ago
parent
commit
49289da5a8
  1. 8
      ui-ngx/src/app/modules/home/components/widget/lib/alarm/alarms-table-widget.component.ts
  2. 8
      ui-ngx/src/app/modules/home/components/widget/lib/entity/entities-table-widget.component.ts
  3. 8
      ui-ngx/src/app/modules/home/components/widget/lib/rpc/persistent-table.component.ts
  4. 6
      ui-ngx/src/app/modules/home/components/widget/lib/table-widget.models.ts
  5. 8
      ui-ngx/src/app/modules/home/components/widget/lib/timeseries-table-widget.component.ts

8
ui-ngx/src/app/modules/home/components/widget/lib/alarm/alarms-table-widget.component.ts

@ -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;
}

8
ui-ngx/src/app/modules/home/components/widget/lib/entity/entities-table-widget.component.ts

@ -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;
}

8
ui-ngx/src/app/modules/home/components/widget/lib/rpc/persistent-table.component.ts

@ -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;
}

6
ui-ngx/src/app/modules/home/components/widget/lib/table-widget.models.ts

@ -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);
}

8
ui-ngx/src/app/modules/home/components/widget/lib/timeseries-table-widget.component.ts

@ -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…
Cancel
Save