From 43ad3c91341de031c1f9102bbf9050aaddd7e616 Mon Sep 17 00:00:00 2001 From: Andrey Dolzhikov Date: Fri, 13 Sep 2024 17:20:41 +0300 Subject: [PATCH 01/38] d.ts spike --- .../grids/grid_core/pager/m_pager.ts | 6 +- .../pager/common/base_pager_props.ts | 6 +- .../js/__internal/pager/content.tsx | 8 +- .../devextreme/js/__internal/pager/info.tsx | 8 +- .../pager/pages/page_index_selector.tsx | 4 +- .../__internal/pager/resizable_container.tsx | 4 +- .../__internal/pager/wrappers/grid_pager.ts | 10 ++ .../js/__internal/pager/wrappers/pager.ts | 2 +- packages/devextreme/js/common/grids.d.ts | 59 ++---------- packages/devextreme/js/ui/data_grid.d.ts | 7 +- packages/devextreme/js/ui/pager.d.ts | 95 +++++++++++++++++++ packages/devextreme/js/ui/tree_list.d.ts | 7 +- packages/devextreme/package.json | 2 +- 13 files changed, 143 insertions(+), 75 deletions(-) create mode 100644 packages/devextreme/js/ui/pager.d.ts diff --git a/packages/devextreme/js/__internal/grids/grid_core/pager/m_pager.ts b/packages/devextreme/js/__internal/grids/grid_core/pager/m_pager.ts index b52c9323ab2d..3abd1316e707 100644 --- a/packages/devextreme/js/__internal/grids/grid_core/pager/m_pager.ts +++ b/packages/devextreme/js/__internal/grids/grid_core/pager/m_pager.ts @@ -1,7 +1,7 @@ import { isDefined } from '@js/core/utils/type'; import { hasWindow } from '@js/core/utils/window'; import messageLocalization from '@js/localization/message'; -import Pager from '@js/ui/pager'; +import Pager from '@ts/pager/wrappers/pager'; import modules from '../m_modules'; @@ -30,7 +30,7 @@ export class PagerView extends modules.View { pageIndex: getPageIndex(dataController), pageSize: dataController.pageSize(), pageCount: dataController.pageCount(), - totalCount: dataController.totalCount(), + itemCount: dataController.totalCount(), hasKnownLastPage: dataController.hasKnownLastPage(), }); } else { @@ -95,7 +95,7 @@ export class PagerView extends modules.View { showNavigationButtons: pagerOptions.showNavigationButtons, label: pagerOptions.label, pageSizes: that.getPageSizes(), - totalCount: dataController.totalCount(), + itemCount: dataController.totalCount(), hasKnownLastPage: dataController.hasKnownLastPage(), rtlEnabled: that.option('rtlEnabled'), pageIndexChanged(pageIndex) { diff --git a/packages/devextreme/js/__internal/pager/common/base_pager_props.ts b/packages/devextreme/js/__internal/pager/common/base_pager_props.ts index 59c6b5d5e93b..748c4383ec39 100644 --- a/packages/devextreme/js/__internal/pager/common/base_pager_props.ts +++ b/packages/devextreme/js/__internal/pager/common/base_pager_props.ts @@ -1,4 +1,4 @@ -import type { PagerDisplayMode } from '@js/common/grids'; +import type { PagerDisplayMode } from '@js/ui/pager'; import messageLocalization from '../../../localization/message'; import type { EventCallback } from '../../core/r1/event_callback'; @@ -21,7 +21,7 @@ export interface BasePagerProps extends BaseWidgetProps { pageSizes: (number | 'all')[]; rtlEnabled?: boolean; showNavigationButtons?: boolean; - totalCount?: number; + itemCount?: number; label?: string; onKeyDown?: EventCallback; } @@ -39,6 +39,6 @@ export const BasePagerDefaultProps: BasePagerProps = { showPageSizes: true, pageSizes: [5, 10], showNavigationButtons: false, - totalCount: 0, + itemCount: 0, label: messageLocalization.format('dxPager-ariaLabel'), }; diff --git a/packages/devextreme/js/__internal/pager/content.tsx b/packages/devextreme/js/__internal/pager/content.tsx index 7ddaab866361..7c906e478d3e 100644 --- a/packages/devextreme/js/__internal/pager/content.tsx +++ b/packages/devextreme/js/__internal/pager/content.tsx @@ -2,7 +2,7 @@ /* eslint-disable @typescript-eslint/explicit-module-boundary-types */ import { InfernoComponent, InfernoEffect } from '@devextreme/runtime/inferno'; import type { RefObject } from '@devextreme-generator/declarations'; -import type { PagerDisplayMode } from '@js/common/grids'; +import type { PagerDisplayMode } from '@js/ui/pager'; import { createRef as infernoCreateRef } from 'inferno'; import { registerKeyboardAction } from '../../ui/shared/accessibility'; @@ -187,7 +187,7 @@ export class PagerContent extends InfernoComponent { infoText, pageCount, pageIndex, - totalCount, + itemCount, pagesRef, hasKnownLastPage, maxPagesCount, @@ -234,7 +234,7 @@ export class PagerContent extends InfernoComponent { infoText={infoText} pageCount={pageCount} pageIndex={pageIndex} - totalCount={totalCount} + itemCount={itemCount} /> )} {this.getPageIndexSelectorVisible() && ( @@ -251,7 +251,7 @@ export class PagerContent extends InfernoComponent { pageIndexChangedInternal={pageIndexChangedInternal} pagesCountText={pagesCountText} showNavigationButtons={showNavigationButtons} - totalCount={totalCount} + itemCount={itemCount} /> )} diff --git a/packages/devextreme/js/__internal/pager/info.tsx b/packages/devextreme/js/__internal/pager/info.tsx index b14ee9031014..ce984bc71f91 100644 --- a/packages/devextreme/js/__internal/pager/info.tsx +++ b/packages/devextreme/js/__internal/pager/info.tsx @@ -13,12 +13,12 @@ export interface InfoTextProps { rootElementRef?: RefObject; } -export type InfoTextPropsType = InfoTextProps & Pick; +export type InfoTextPropsType = InfoTextProps & Pick; const InfoTextDefaultProps: InfoTextPropsType = { pageCount: PagerDefaultProps.pageCount, pageIndex: PagerDefaultProps.pageIndex, - totalCount: PagerDefaultProps.totalCount, + itemCount: PagerDefaultProps.itemCount, }; export class InfoText extends BaseInfernoComponent { @@ -37,13 +37,13 @@ export class InfoText extends BaseInfernoComponent { const { pageCount, pageIndex, - totalCount, + itemCount, } = this.props; return format( this.getInfoText(), (pageIndex + 1).toString(), pageCount?.toString(), - totalCount?.toString(), + itemCount?.toString(), ) as string; } diff --git a/packages/devextreme/js/__internal/pager/pages/page_index_selector.tsx b/packages/devextreme/js/__internal/pager/pages/page_index_selector.tsx index 27234d8ca0be..a738cded6d7d 100644 --- a/packages/devextreme/js/__internal/pager/pages/page_index_selector.tsx +++ b/packages/devextreme/js/__internal/pager/pages/page_index_selector.tsx @@ -46,7 +46,7 @@ type PageIndexSelectorPropsType = Pick & PageIndexSelectorProps; @@ -57,7 +57,7 @@ const PageIndexSelectorDefaultProps: PageIndexSelectorPropsType = { pageIndex: PagerDefaultProps.pageIndex, pageIndexChangedInternal: PagerDefaultProps.pageIndexChangedInternal, showNavigationButtons: PagerDefaultProps.showNavigationButtons, - totalCount: PagerDefaultProps.totalCount, + itemCount: PagerDefaultProps.itemCount, }; interface NavigationButtonProps extends Pick {navigate: LightButtonProps['onClick']} diff --git a/packages/devextreme/js/__internal/pager/resizable_container.tsx b/packages/devextreme/js/__internal/pager/resizable_container.tsx index ee551de08753..6cd11ca3c5a8 100644 --- a/packages/devextreme/js/__internal/pager/resizable_container.tsx +++ b/packages/devextreme/js/__internal/pager/resizable_container.tsx @@ -155,7 +155,7 @@ export class ResizableContainer extends InfernoComponent 0) { + return Math.max(1, Math.ceil(itemCount / pageSize)); + } + return 1; + } } diff --git a/packages/devextreme/js/__internal/pager/wrappers/pager.ts b/packages/devextreme/js/__internal/pager/wrappers/pager.ts index b9ab30ac5926..d896e288f9d4 100644 --- a/packages/devextreme/js/__internal/pager/wrappers/pager.ts +++ b/packages/devextreme/js/__internal/pager/wrappers/pager.ts @@ -41,7 +41,7 @@ export default class Pager extends GridPagerWrapper { 'pageSizes', 'rtlEnabled', 'showNavigationButtons', - 'totalCount', + 'itemCount', 'label', 'onKeyDown', 'pageSize', diff --git a/packages/devextreme/js/common/grids.d.ts b/packages/devextreme/js/common/grids.d.ts index ce777d524038..f8995c197c31 100644 --- a/packages/devextreme/js/common/grids.d.ts +++ b/packages/devextreme/js/common/grids.d.ts @@ -70,6 +70,10 @@ import { } from '../ui/widget/ui.widget'; import { PositionConfig } from '../animation/position'; +import { + BasePagerOptions, +} from '../ui/pager'; + /** * @docid * @hidden @@ -2453,61 +2457,14 @@ export type NewRowPosition = 'first' | 'last' | 'pageBottom' | 'pageTop' | 'view * @public * @namespace DevExpress.common.grids */ -export type Pager = { - /** - * @docid GridBaseOptions.pager.allowedPageSizes - * @default "auto" - */ - allowedPageSizes?: Array<(number | PagerPageSize)> | Mode; - /** - * @docid GridBaseOptions.pager.displayMode - * @default "adaptive" - */ - displayMode?: PagerDisplayMode; - /** - * @docid GridBaseOptions.pager.infoText - * @default "Page {0} of {1} ({2} items)" - */ - infoText?: string; - /** - * @docid GridBaseOptions.pager.showInfo - * @default false - */ - showInfo?: boolean; - /** - * @docid GridBaseOptions.pager.showNavigationButtons - * @default false - */ - showNavigationButtons?: boolean; - /** - * @docid GridBaseOptions.pager.showPageSizeSelector - * @default false - */ - showPageSizeSelector?: boolean; - /** - * @docid GridBaseOptions.pager.visible +export type Pager = BasePagerOptions & { + /** + * @docid * @default "auto" */ - visible?: boolean | Mode; - /** - * @docid GridBaseOptions.pager.label - * @default "Page Navigation" - */ - label?: string; + visible?: boolean | Mode; }; -/** - * @public - * @namespace DevExpress.common.grids - */ -export type PagerDisplayMode = 'adaptive' | 'compact' | 'full'; - -/** - * @public - * @namespace DevExpress.common.grids - */ -export type PagerPageSize = 'all' | 'auto'; - /** * @hidden * @docid diff --git a/packages/devextreme/js/ui/data_grid.d.ts b/packages/devextreme/js/ui/data_grid.d.ts index 817f63acc983..a6d6df3c69e4 100644 --- a/packages/devextreme/js/ui/data_grid.d.ts +++ b/packages/devextreme/js/ui/data_grid.d.ts @@ -135,8 +135,6 @@ export { LoadPanel, NewRowPosition, Pager, - PagerDisplayMode, - PagerPageSize, RowDraggingTemplateData, SearchPanel, SelectedFilterOperation, @@ -148,6 +146,11 @@ export { SummaryType, } from '../common/grids'; +export { + PagerDisplayMode, + PagerPageSize, +} from './pager'; + export { AdaptiveDetailRowPreparingInfo, DataChangeInfo, diff --git a/packages/devextreme/js/ui/pager.d.ts b/packages/devextreme/js/ui/pager.d.ts new file mode 100644 index 000000000000..4a5a961a315b --- /dev/null +++ b/packages/devextreme/js/ui/pager.d.ts @@ -0,0 +1,95 @@ +import { + Mode, + } from '../common'; +import Widget, { WidgetOptions } from './widget/ui.widget'; + +/** + * @public + * @namespace DevExpress.ui.dxPager + */ +export type PagerDisplayMode = 'adaptive' | 'compact' | 'full'; + +/** + * @public + * @namespace DevExpress.ui.dxPager + */ +export type PagerPageSize = 'all' | 'auto'; + +/** + * @docid + * @public + * @namespace DevExpress.ui + */ +export type BasePagerOptions = { + /** + * @docid + * @default "auto" + */ + allowedPageSizes?: Array<(number | PagerPageSize)> | Mode; + /** + * @docid + * @default "adaptive" + */ + displayMode?: PagerDisplayMode; + /** + * @docid + * @default "Page {0} of {1} ({2} items)" + */ + infoText?: string; + /** + * @docid + * @default false + */ + showInfo?: boolean; + /** + * @docid + * @default false + */ + showNavigationButtons?: boolean; + /** + * @docid + * @default false + */ + showPageSizeSelector?: boolean; + /** + * @docid + * @default "Page Navigation" + */ + label?: string; + }; + +/** + * @docid + * @namespace DevExpress.ui + * @public + */ +export default class dxPager extends Widget { + /** + * @docid + * @publicName getPageCount() + * @public + */ + getPageCount(): number; +} + +export interface Properties extends BasePagerOptions, WidgetOptions { + /** + * @docid + * @fires Properties.onOptionChanged + * @default 1 + */ + pageIndex?: number; + + /** + * @docid + * @fires Properties.onOptionChanged + * @default 10 + */ + pageSize?: number; + + /** + * @docid + * @default 0 + */ + itemCount?: number; +} diff --git a/packages/devextreme/js/ui/tree_list.d.ts b/packages/devextreme/js/ui/tree_list.d.ts index 6c56a50bc34a..c46133bb0faf 100644 --- a/packages/devextreme/js/ui/tree_list.d.ts +++ b/packages/devextreme/js/ui/tree_list.d.ts @@ -147,8 +147,6 @@ export { LoadPanel, NewRowPosition, Pager, - PagerDisplayMode, - PagerPageSize, RowDraggingTemplateData, SearchPanel, SelectedFilterOperation, @@ -160,6 +158,11 @@ export { SummaryType, } from '../common/grids'; +export { + PagerDisplayMode, + PagerPageSize, + } from './pager'; + export { DataStructure, Mode, diff --git a/packages/devextreme/package.json b/packages/devextreme/package.json index 9cdc1142f9fc..85a31cf69fd2 100644 --- a/packages/devextreme/package.json +++ b/packages/devextreme/package.json @@ -211,7 +211,7 @@ "dev-inprogress": "dotnet build build/build-dotnet.sln && cross-env DEVEXTREME_TEST_CI=true BUILD_INPROGRESS_RENOVATION=true gulp dev", "dev:watch": "cross-env DEVEXTREME_TEST_CI=true gulp dev-watch", "transpile-tests": "gulp transpile-tests", - "update-ts-reexports": "dx-tools generate-reexports --sources ./js --exclude \"((dialog|export|list_light|notify|overlay|pager|palette|set_template_engine|splitter_control|themes|themes_callback|track_bar|utils|validation_engine|validation_message)[.d.ts])|(js/renovation/)\" --compiler-options \"{ \\\"typeRoots\\\": [] }\"", + "update-ts-reexports": "dx-tools generate-reexports --sources ./js --exclude \"((dialog|export|list_light|notify|overlay|palette|set_template_engine|splitter_control|themes|themes_callback|track_bar|utils|validation_engine|validation_message)[.d.ts])|(js/renovation/)\" --compiler-options \"{ \\\"typeRoots\\\": [] }\"", "update-ts-bundle": "dx-tools generate-ts-bundle --sources ./js --output-path ./ts/dx.all.d.ts --exclude js/renovation/", "regenerate": "pnpm run update-ts-bundle && pnpm run update-ts-reexports", "validate-ts": "gulp validate-ts", From ce429682bc10ec932f679f41d3b118895344030b Mon Sep 17 00:00:00 2001 From: Andrey Dolzhikov Date: Mon, 16 Sep 2024 12:19:08 +0300 Subject: [PATCH 02/38] fix build --- .../build/gulp/modules_metadata.json | 6 + .../js/bundles/modules/parts/widgets-base.js | 1 + .../devextreme/js/integration/jquery.d.ts | 7 ++ packages/devextreme/js/ui/data_grid.d.ts | 5 - .../devextreme/js/ui/data_grid_types.d.ts | 2 - packages/devextreme/js/ui/pager_types.d.ts | 1 + .../devextreme/js/ui/tree_list_types.d.ts | 4 +- packages/devextreme/ts/dx.all.d.ts | 111 +++++++++++++----- 8 files changed, 96 insertions(+), 41 deletions(-) create mode 100644 packages/devextreme/js/ui/pager_types.d.ts diff --git a/packages/devextreme/build/gulp/modules_metadata.json b/packages/devextreme/build/gulp/modules_metadata.json index fd38d7bccb83..4522d1a921af 100644 --- a/packages/devextreme/build/gulp/modules_metadata.json +++ b/packages/devextreme/build/gulp/modules_metadata.json @@ -500,6 +500,12 @@ "baseZIndex": { "path": "ui.dxOverlay.baseZIndex" } } }, + { + "name": "ui/pager", + "exports": { + "default": { "path": "ui.dxPager", "isWidget": true } + } + }, { "name": "ui/pivot_grid", "exports": { diff --git a/packages/devextreme/js/bundles/modules/parts/widgets-base.js b/packages/devextreme/js/bundles/modules/parts/widgets-base.js index 67ad6c27c5c3..c2355c395b80 100644 --- a/packages/devextreme/js/bundles/modules/parts/widgets-base.js +++ b/packages/devextreme/js/bundles/modules/parts/widgets-base.js @@ -47,6 +47,7 @@ ui.dxMap = require('../../../ui/map'); ui.dxMultiView = require('../../../ui/multi_view'); ui.dxNumberBox = require('../../../ui/number_box'); ui.dxOverlay = require('../../../ui/overlay/ui.overlay'); +ui.dxPager = require('../../../ui/pager'); ui.dxPopover = require('../../../ui/popover'); ui.dxPopup = require('../../../ui/popup'); ui.dxProgressBar = require('../../../ui/progress_bar'); diff --git a/packages/devextreme/js/integration/jquery.d.ts b/packages/devextreme/js/integration/jquery.d.ts index 3358c23a8162..ddea7ab7df4a 100644 --- a/packages/devextreme/js/integration/jquery.d.ts +++ b/packages/devextreme/js/integration/jquery.d.ts @@ -33,6 +33,7 @@ import dxMap, { Properties as MapProperties } from '../ui/map'; import dxMenu, { Properties as MenuProperties } from '../ui/menu'; import dxMultiView, { Properties as MultiViewProperties } from '../ui/multi_view'; import dxNumberBox, { Properties as NumberBoxProperties } from '../ui/number_box'; +import dxPager, { Properties as PagerProperties } from '../ui/pager'; import dxPivotGrid, { Properties as PivotGridProperties } from '../ui/pivot_grid'; import dxPivotGridFieldChooser, { Properties as PivotGridFieldChooserProperties } from '../ui/pivot_grid_field_chooser'; import dxPopover, { Properties as PopoverProperties } from '../ui/popover'; @@ -353,6 +354,12 @@ declare global { dxNumberBox(options: string): any; dxNumberBox(options: string, ...params: any[]): any; + dxPager(): JQuery; + dxPager(options: 'instance'): dxPager; + dxPager(options: PagerProperties): JQuery; + dxPager(options: string): any; + dxPager(options: string, ...params: any[]): any; + dxPieChart(): JQuery; dxPieChart(options: 'instance'): dxPieChart; dxPieChart(options: PieChartProperties): JQuery; diff --git a/packages/devextreme/js/ui/data_grid.d.ts b/packages/devextreme/js/ui/data_grid.d.ts index a6d6df3c69e4..b8a13cf38af9 100644 --- a/packages/devextreme/js/ui/data_grid.d.ts +++ b/packages/devextreme/js/ui/data_grid.d.ts @@ -146,11 +146,6 @@ export { SummaryType, } from '../common/grids'; -export { - PagerDisplayMode, - PagerPageSize, -} from './pager'; - export { AdaptiveDetailRowPreparingInfo, DataChangeInfo, diff --git a/packages/devextreme/js/ui/data_grid_types.d.ts b/packages/devextreme/js/ui/data_grid_types.d.ts index 93e249e68017..c5fa9553187a 100644 --- a/packages/devextreme/js/ui/data_grid_types.d.ts +++ b/packages/devextreme/js/ui/data_grid_types.d.ts @@ -46,8 +46,6 @@ export { LoadPanel, NewRowPosition, Pager, - PagerDisplayMode, - PagerPageSize, RowDraggingTemplateData, SearchPanel, SelectedFilterOperation, diff --git a/packages/devextreme/js/ui/pager_types.d.ts b/packages/devextreme/js/ui/pager_types.d.ts new file mode 100644 index 000000000000..61cfe1863cd3 --- /dev/null +++ b/packages/devextreme/js/ui/pager_types.d.ts @@ -0,0 +1 @@ +export { PagerDisplayMode, PagerPageSize, BasePagerOptions } from './pager'; diff --git a/packages/devextreme/js/ui/tree_list_types.d.ts b/packages/devextreme/js/ui/tree_list_types.d.ts index 14060bfd35f5..fc1c04d24a27 100644 --- a/packages/devextreme/js/ui/tree_list_types.d.ts +++ b/packages/devextreme/js/ui/tree_list_types.d.ts @@ -34,8 +34,6 @@ export { LoadPanel, NewRowPosition, Pager, - PagerDisplayMode, - PagerPageSize, RowDraggingTemplateData, SearchPanel, SelectedFilterOperation, @@ -45,6 +43,8 @@ export { StateStoreType, StateStoring, SummaryType, + PagerDisplayMode, + PagerPageSize, DataStructure, Mode, ScrollMode, diff --git a/packages/devextreme/ts/dx.all.d.ts b/packages/devextreme/ts/dx.all.d.ts index 7f056967e64c..87f3fdc368e4 100644 --- a/packages/devextreme/ts/dx.all.d.ts +++ b/packages/devextreme/ts/dx.all.d.ts @@ -251,6 +251,12 @@ declare global { dxNumberBox(options: string): any; dxNumberBox(options: string, ...params: any[]): any; + dxPager(): JQuery; + dxPager(options: 'instance'): DevExpress.ui.dxPager; + dxPager(options: DevExpress.ui.dxPager.Properties): JQuery; + dxPager(options: string): any; + dxPager(options: string, ...params: any[]): any; + dxPieChart(): JQuery; dxPieChart(options: 'instance'): DevExpress.viz.dxPieChart; dxPieChart(options: DevExpress.viz.dxPieChart.Properties): JQuery; @@ -4249,42 +4255,12 @@ declare module DevExpress.common.grids { /** * [descr:Pager] */ - export type Pager = { - /** - * [descr:GridBaseOptions.pager.allowedPageSizes] - */ - allowedPageSizes?: Array | Mode; - /** - * [descr:GridBaseOptions.pager.displayMode] - */ - displayMode?: PagerDisplayMode; - /** - * [descr:GridBaseOptions.pager.infoText] - */ - infoText?: string; - /** - * [descr:GridBaseOptions.pager.showInfo] - */ - showInfo?: boolean; - /** - * [descr:GridBaseOptions.pager.showNavigationButtons] - */ - showNavigationButtons?: boolean; - /** - * [descr:GridBaseOptions.pager.showPageSizeSelector] - */ - showPageSizeSelector?: boolean; + export type Pager = DevExpress.ui.BasePagerOptions & { /** - * [descr:GridBaseOptions.pager.visible] + * [descr:Pager.visible] */ visible?: boolean | Mode; - /** - * [descr:GridBaseOptions.pager.label] - */ - label?: string; }; - export type PagerDisplayMode = 'adaptive' | 'compact' | 'full'; - export type PagerPageSize = 'all' | 'auto'; /** * [descr:PagingBase] * @deprecated Attention! This type is for internal purposes only. If you used it previously, please submit a ticket to our {@link https://supportcenter.devexpress.com/ticket/create Support Center}. We will check if there is an alternative solution. @@ -7918,6 +7894,41 @@ declare module DevExpress.ui { * [descr:dxSchedulerAppointment] */ export type Appointment = dxSchedulerAppointment; + /** + * [descr:BasePagerOptions] + */ + export type BasePagerOptions = { + /** + * [descr:BasePagerOptions.allowedPageSizes] + */ + allowedPageSizes?: + | Array + | DevExpress.common.Mode; + /** + * [descr:BasePagerOptions.displayMode] + */ + displayMode?: DevExpress.ui.dxPager.PagerDisplayMode; + /** + * [descr:BasePagerOptions.infoText] + */ + infoText?: string; + /** + * [descr:BasePagerOptions.showInfo] + */ + showInfo?: boolean; + /** + * [descr:BasePagerOptions.showNavigationButtons] + */ + showNavigationButtons?: boolean; + /** + * [descr:BasePagerOptions.showPageSizeSelector] + */ + showPageSizeSelector?: boolean; + /** + * [descr:BasePagerOptions.label] + */ + label?: string; + }; /** * [descr:ColCountResponsible] * @deprecated Attention! This type is for internal purposes only. If you used it previously, please submit a ticket to our {@link https://supportcenter.devexpress.com/ticket/create Support Center}. We will check if there is an alternative solution. @@ -21712,6 +21723,38 @@ declare module DevExpress.ui { */ wrapperAttr?: any; } + /** + * [descr:dxPager] + */ + export class dxPager extends Widget { + /** + * [descr:dxPager.getPageCount()] + */ + getPageCount(): number; + } + module dxPager { + /** + * @deprecated Attention! This type is for internal purposes only. If you used it previously, please submit a ticket to our {@link https://supportcenter.devexpress.com/ticket/create Support Center}. We will check if there is an alternative solution. + */ + export interface Properties + extends BasePagerOptions, + WidgetOptions { + /** + * [descr:Properties.pageIndex] + */ + pageIndex?: number; + + /** + * [descr:Properties.pageSize] + */ + pageSize?: number; + + /** + * [descr:Properties.itemCount] + */ + itemCount?: number; + } + } /** * [descr:dxPivotGrid] */ @@ -30913,6 +30956,10 @@ declare module DevExpress.ui.dxOverlay { */ export function baseZIndex(zIndex: number): void; } +declare module DevExpress.ui.dxPager { + export type PagerDisplayMode = 'adaptive' | 'compact' | 'full'; + export type PagerPageSize = 'all' | 'auto'; +} declare module DevExpress.ui.dxPivotGrid { export type Cell = dxPivotGridPivotGridCell; } From 1dd31c7895cdc02775ef43e8912d0140a84a7637 Mon Sep 17 00:00:00 2001 From: Andrey Dolzhikov Date: Mon, 16 Sep 2024 12:32:15 +0300 Subject: [PATCH 03/38] Fix tests --- packages/devextreme/js/ui/data_grid.d.ts | 5 +++++ packages/devextreme/js/ui/data_grid_types.d.ts | 2 ++ 2 files changed, 7 insertions(+) diff --git a/packages/devextreme/js/ui/data_grid.d.ts b/packages/devextreme/js/ui/data_grid.d.ts index b8a13cf38af9..a6d6df3c69e4 100644 --- a/packages/devextreme/js/ui/data_grid.d.ts +++ b/packages/devextreme/js/ui/data_grid.d.ts @@ -146,6 +146,11 @@ export { SummaryType, } from '../common/grids'; +export { + PagerDisplayMode, + PagerPageSize, +} from './pager'; + export { AdaptiveDetailRowPreparingInfo, DataChangeInfo, diff --git a/packages/devextreme/js/ui/data_grid_types.d.ts b/packages/devextreme/js/ui/data_grid_types.d.ts index c5fa9553187a..145963a441ab 100644 --- a/packages/devextreme/js/ui/data_grid_types.d.ts +++ b/packages/devextreme/js/ui/data_grid_types.d.ts @@ -55,6 +55,8 @@ export { StateStoreType, StateStoring, SummaryType, + PagerDisplayMode, + PagerPageSize, DataGridCommandColumnType, DataGridExportFormat, DataGridScrollMode, From b838826e0ea71e2c960ae2a3552f8b89e9848d73 Mon Sep 17 00:00:00 2001 From: Andrey Dolzhikov Date: Mon, 16 Sep 2024 13:11:12 +0300 Subject: [PATCH 04/38] fix build --- packages/devextreme/js/common/grids.d.ts | 16 ++++++++++++++++ packages/devextreme/ts/dx.all.d.ts | 8 ++++++++ 2 files changed, 24 insertions(+) diff --git a/packages/devextreme/js/common/grids.d.ts b/packages/devextreme/js/common/grids.d.ts index f8995c197c31..a7921ba0c30c 100644 --- a/packages/devextreme/js/common/grids.d.ts +++ b/packages/devextreme/js/common/grids.d.ts @@ -72,8 +72,24 @@ import { PositionConfig } from '../animation/position'; import { BasePagerOptions, + PagerDisplayMode as PagerDisplayModeType, + PagerPageSize as PagerPageSizeType, } from '../ui/pager'; +/** + * @docid + * @public + * @namespace DevExpress.common.grids + */ +export type PagerDisplayMode = PagerDisplayModeType; + +/** + * @docid + * @public + * @namespace DevExpress.common.grids + */ +export type PagerPageSize = PagerPageSizeType; + /** * @docid * @hidden diff --git a/packages/devextreme/ts/dx.all.d.ts b/packages/devextreme/ts/dx.all.d.ts index 87f3fdc368e4..3d323115e7c5 100644 --- a/packages/devextreme/ts/dx.all.d.ts +++ b/packages/devextreme/ts/dx.all.d.ts @@ -4261,6 +4261,14 @@ declare module DevExpress.common.grids { */ visible?: boolean | Mode; }; + /** + * [descr:PagerDisplayMode] + */ + export type PagerDisplayMode = DevExpress.ui.dxPager.PagerDisplayMode; + /** + * [descr:PagerPageSize] + */ + export type PagerPageSize = DevExpress.ui.dxPager.PagerPageSize; /** * [descr:PagingBase] * @deprecated Attention! This type is for internal purposes only. If you used it previously, please submit a ticket to our {@link https://supportcenter.devexpress.com/ticket/create Support Center}. We will check if there is an alternative solution. From 82204ccdf60eb6cb72a4ef2708b03516920cc462 Mon Sep 17 00:00:00 2001 From: Andrey Dolzhikov Date: Mon, 16 Sep 2024 17:16:33 +0300 Subject: [PATCH 05/38] fix build --- packages/devextreme/js/ui/pager.d.ts | 5 +++ packages/devextreme/js/ui/pager_types.d.ts | 7 +++- packages/devextreme/ts/dx.all.d.ts | 46 ++++++++++------------ 3 files changed, 32 insertions(+), 26 deletions(-) diff --git a/packages/devextreme/js/ui/pager.d.ts b/packages/devextreme/js/ui/pager.d.ts index 4a5a961a315b..c53417e2e9ea 100644 --- a/packages/devextreme/js/ui/pager.d.ts +++ b/packages/devextreme/js/ui/pager.d.ts @@ -72,6 +72,11 @@ export default class dxPager extends Widget { getPageCount(): number; } +/** + * @docid + * @namespace DevExpress.ui + * @public + */ export interface Properties extends BasePagerOptions, WidgetOptions { /** * @docid diff --git a/packages/devextreme/js/ui/pager_types.d.ts b/packages/devextreme/js/ui/pager_types.d.ts index 61cfe1863cd3..25c03d395103 100644 --- a/packages/devextreme/js/ui/pager_types.d.ts +++ b/packages/devextreme/js/ui/pager_types.d.ts @@ -1 +1,6 @@ -export { PagerDisplayMode, PagerPageSize, BasePagerOptions } from './pager'; +export { + PagerDisplayMode, + PagerPageSize, + BasePagerOptions, + Properties, +} from './pager'; diff --git a/packages/devextreme/ts/dx.all.d.ts b/packages/devextreme/ts/dx.all.d.ts index 3d323115e7c5..3fd0ce5a0363 100644 --- a/packages/devextreme/ts/dx.all.d.ts +++ b/packages/devextreme/ts/dx.all.d.ts @@ -253,7 +253,7 @@ declare global { dxPager(): JQuery; dxPager(options: 'instance'): DevExpress.ui.dxPager; - dxPager(options: DevExpress.ui.dxPager.Properties): JQuery; + dxPager(options: DevExpress.ui.Properties): JQuery; dxPager(options: string): any; dxPager(options: string, ...params: any[]): any; @@ -21734,35 +21734,12 @@ declare module DevExpress.ui { /** * [descr:dxPager] */ - export class dxPager extends Widget { + export class dxPager extends Widget { /** * [descr:dxPager.getPageCount()] */ getPageCount(): number; } - module dxPager { - /** - * @deprecated Attention! This type is for internal purposes only. If you used it previously, please submit a ticket to our {@link https://supportcenter.devexpress.com/ticket/create Support Center}. We will check if there is an alternative solution. - */ - export interface Properties - extends BasePagerOptions, - WidgetOptions { - /** - * [descr:Properties.pageIndex] - */ - pageIndex?: number; - - /** - * [descr:Properties.pageSize] - */ - pageSize?: number; - - /** - * [descr:Properties.itemCount] - */ - itemCount?: number; - } - } /** * [descr:dxPivotGrid] */ @@ -30463,6 +30440,25 @@ declare module DevExpress.ui { * [descr:ui.notify(options,stack)] */ export function notify(options: any, stack?: Stack): void; + /** + * [descr:Properties] + */ + export interface Properties extends BasePagerOptions, WidgetOptions { + /** + * [descr:Properties.pageIndex] + */ + pageIndex?: number; + + /** + * [descr:Properties.pageSize] + */ + pageSize?: number; + + /** + * [descr:Properties.itemCount] + */ + itemCount?: number; + } /** * [descr:ui.repaintFloatingActionButton()] */ From 44c09354f015085ec87cda400cf49a82d937976a Mon Sep 17 00:00:00 2001 From: alexlavrov Date: Wed, 18 Sep 2024 16:59:56 +0400 Subject: [PATCH 06/38] Add required doctags --- packages/devextreme/js/common/grids.d.ts | 2 +- packages/devextreme/js/ui/pager.d.ts | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/devextreme/js/common/grids.d.ts b/packages/devextreme/js/common/grids.d.ts index a7921ba0c30c..cd8749ca4b23 100644 --- a/packages/devextreme/js/common/grids.d.ts +++ b/packages/devextreme/js/common/grids.d.ts @@ -2216,7 +2216,6 @@ export type GridBaseOptions, TRowDat onToolbarPreparing?: ((e: EventInfo & ToolbarPreparingInfo) => void); /** * @docid - * @type object * @public */ pager?: Pager; @@ -2471,6 +2470,7 @@ export type NewRowPosition = 'first' | 'last' | 'pageBottom' | 'pageTop' | 'view /** * @docid * @public + * @inherits BasePagerOptions * @namespace DevExpress.common.grids */ export type Pager = BasePagerOptions & { diff --git a/packages/devextreme/js/ui/pager.d.ts b/packages/devextreme/js/ui/pager.d.ts index c53417e2e9ea..bb1759dd1514 100644 --- a/packages/devextreme/js/ui/pager.d.ts +++ b/packages/devextreme/js/ui/pager.d.ts @@ -62,6 +62,8 @@ export type BasePagerOptions = { * @docid * @namespace DevExpress.ui * @public + * @inherits Widget + * @options BasePagerOptions */ export default class dxPager extends Widget { /** From ba697aae135d144fb33cd22632c405190d155281 Mon Sep 17 00:00:00 2001 From: Andrey Dolzhikov Date: Wed, 18 Sep 2024 17:26:07 +0300 Subject: [PATCH 07/38] Fix tests --- .../pagerView.tests.js | 2 +- .../DevExpress.ui.widgets/pager.tests.js | 56 +++++++++---------- 2 files changed, 29 insertions(+), 29 deletions(-) diff --git a/packages/devextreme/testing/tests/DevExpress.ui.widgets.dataGrid/pagerView.tests.js b/packages/devextreme/testing/tests/DevExpress.ui.widgets.dataGrid/pagerView.tests.js index 23d8f21fa0e6..3b0d699ae807 100644 --- a/packages/devextreme/testing/tests/DevExpress.ui.widgets.dataGrid/pagerView.tests.js +++ b/packages/devextreme/testing/tests/DevExpress.ui.widgets.dataGrid/pagerView.tests.js @@ -296,7 +296,7 @@ QUnit.module('Pager', { assert.equal(pagerView.getPager().option.callCount, 1, 'pager option call count after partial update'); assert.deepEqual(pagerView.getPager().option.getCall(0).args, [{ hasKnownLastPage: true, // T697587 - totalCount: 143, // #7259 + itemCount: 143, // #7259 pageCount: 20, pageIndex: 2, // T886628 pageSize: 7 // T886628 diff --git a/packages/devextreme/testing/tests/DevExpress.ui.widgets/pager.tests.js b/packages/devextreme/testing/tests/DevExpress.ui.widgets/pager.tests.js index c011dc82323c..27e215dddd70 100644 --- a/packages/devextreme/testing/tests/DevExpress.ui.widgets/pager.tests.js +++ b/packages/devextreme/testing/tests/DevExpress.ui.widgets/pager.tests.js @@ -849,7 +849,7 @@ function() { QUnit.test('Pager Info', function(assert) { $('#container').dxPager({ - maxPagesCount: 8, pageCount: 10, pageSizes: [5, 10, 20], showInfo: true, totalCount: 86, + maxPagesCount: 8, pageCount: 10, pageSizes: [5, 10, 20], showInfo: true, itemCount: 86, infoText: 'Page {0} of {1} ({2} items)' }); @@ -859,14 +859,14 @@ function() { assert.equal($info.text(), 'Page 1 of 10 (86 items)', 'info text'); }); - QUnit.test('Page info text is changed when totalCount is changed', function(assert) { + QUnit.test('Page info text is changed when itemCount is changed', function(assert) { const $pager = $('#container').dxPager({ - maxPagesCount: 8, pageCount: 10, pageSizes: [5, 10, 20], showInfo: true, totalCount: 86, + maxPagesCount: 8, pageCount: 10, pageSizes: [5, 10, 20], showInfo: true, itemCount: 86, infoText: 'Page {0} of {1} ({2} items)' }); const instance = $pager.dxPager('instance'); - instance.option('totalCount', 89); + instance.option('itemCount', 89); assert.equal($('.dx-info').text(), 'Page 1 of 10 (89 items)'); }); @@ -876,7 +876,7 @@ function() { pageCount: 10, pageSizes: [5, 10, 20], showInfo: true, - totalCount: 86, + itemCount: 86, infoText: 'Page {0} of {1} ({2} items)', pagesCountText: 'of' }); @@ -901,7 +901,7 @@ function() { pageSizes: [5, 10, 20], showInfo: false, showPageSizes: false, - totalCount: 86, + itemCount: 86, pagesCountText: 'of' }); const $pageSizeChooser = $pager.find('.dx-page-sizes').children().first(); @@ -942,7 +942,7 @@ function() { pageSizes: [5, 10, 20], pageSize: 10, showInfo: true, - totalCount: 86, + itemCount: 86, infoText: 'Page {0} of {1} ({2} items)', pagesCountText: 'of', showNavigationButtons: true @@ -969,7 +969,7 @@ function() { pageCount: 10, pageSizes: [5, 10, 20], pageSize: 10, - totalCount: 86, + itemCount: 86, pagesCountText: 'of' }); const $pageSizeChooser = $pager.find('.dx-page-sizes').children().first(); @@ -989,7 +989,7 @@ function() { pageCount: 10, pageSizes: [5, 10, 20], pageSize: 10, - totalCount: 86, + itemCount: 86, pagesCountText: 'of' }); const pager = $pager.dxPager('instance'); @@ -1011,7 +1011,7 @@ function() { pageCount: 10, pageSizes: [5, 10, 20], pageSize: 5, - totalCount: 86, + itemCount: 86, pagesCountText: 'of', pageSizeChanged: function(value) { testValue = value; @@ -1032,7 +1032,7 @@ function() { pageCount: 10, pageSizes: [7, 10, 13, 25], pageSize: 10, - totalCount: 86, + itemCount: 86, pagesCountText: 'of' }); @@ -1050,7 +1050,7 @@ function() { pageCount: 10, pageSizes: [7, 10, 13, 25], pageSize: 10, - totalCount: 86, + itemCount: 86, pagesCountText: 'of' }); @@ -1069,7 +1069,7 @@ function() { const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ maxPagesCount: 8, pageCount: 10, - totalCount: 86, + itemCount: 86, pageIndex: 73, pagesCountText: 'of' }); @@ -1083,7 +1083,7 @@ function() { const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ maxPagesCount: 8, pageCount: 10, - totalCount: 86, + itemCount: 86, pageIndex: 73, pagesCountText: 'of' }); @@ -1106,7 +1106,7 @@ function() { pageCount: 10, pageSizes: [5, 10, 20], pageSize: 5, - totalCount: 86, + itemCount: 86, pagesCountText: 'of', pageIndexChanged: function(value) { pageIndex = value; @@ -1126,7 +1126,7 @@ function() { pageCount: 10, pageSizes: [5, 10, 20], pageSize: 5, - totalCount: 86, + itemCount: 86, pagesCountText: 'of' }); const $pageIndex = $pager.find('.dx-page-index'); @@ -1144,7 +1144,7 @@ function() { pageCount: 10, pageSizes: [5, 10, 20], pageSize: 5, - totalCount: 86, + itemCount: 86, pagesCountText: 'of', showNavigationButtons: true, pageIndexChanged: function(value) { @@ -1170,7 +1170,7 @@ function() { pageSizes: [5, 10, 20], pageIndex: 2, pageSize: 5, - totalCount: 86, + itemCount: 86, pagesCountText: 'of', pageIndexChanged: function(value) { pageIndex = value; @@ -1200,7 +1200,7 @@ function() { pageCount: 10, pageSizes: [5, 10, 20], showInfo: true, - totalCount: 86, + itemCount: 86, infoText: 'Page {0} of {1} ({2} items)', pagesCountText: 'of', showNavigationButtons: true @@ -1221,7 +1221,7 @@ function() { pageCount: 10, pageSizes: [5, 10, 20], showInfo: true, - totalCount: 86, + itemCount: 86, infoText: 'Page {0} of {1} ({2} items)', pagesCountText: 'of', showNavigationButtons: true @@ -1248,7 +1248,7 @@ function() { pageCount: 10, pageSizes: [5, 10, 20], showInfo: true, - totalCount: 200, + itemCount: 200, infoText: 'Page {0} of {1} ({2} items)', }); @@ -1276,7 +1276,7 @@ function() { pageCount: 10, pageSizes: [5, 10, 20], showInfo: true, - totalCount: 86, + itemCount: 86, infoText: 'Page {0} of {1} ({2} items)', pagesCountText: 'of', showNavigationButtons: true @@ -1293,7 +1293,7 @@ function() { pageSize: 8, pageSizes: [5, 8, 15, 30], showInfo: true, - totalCount: 40, + itemCount: 40, infoText: 'Page {0} of {1} ({2} items)', pagesCountText: 'of', showNavigationButtons: true @@ -1312,7 +1312,7 @@ function() { pageCount: 10, pageSizes: [5, 10, 20], showInfo: true, - totalCount: 86, + itemCount: 86, infoText: 'Page {0} of {1} ({2} items)', pagesCountText: 'of', showNavigationButtons: true @@ -1353,7 +1353,7 @@ function() { pageCount: 10, pageSizes: [5, 10, 20], showInfo: true, - totalCount: 86, + itemCount: 86, infoText: 'Page {0} of {1} ({2} items)', pagesCountText: 'of', showNavigationButtons: true @@ -1374,7 +1374,7 @@ function() { pageCount: 10, pageSizes: [5, 10, 20], showInfo: true, - totalCount: 86, + itemCount: 86, infoText: 'Page {0} of {1} ({2} items)', pagesCountText: 'of', showNavigationButtons: true @@ -1417,7 +1417,7 @@ function() { pageCount: 10, pageSizes: [5, 10, 20], showInfo: true, - totalCount: 86, + itemCount: 86, infoText: 'Page {0} of {1} ({2} items)', pagesCountText: 'of' }); @@ -1436,7 +1436,7 @@ function() { pageCount: 10, pageSizes: [5, 10, 20], showInfo: true, - totalCount: 86, + itemCount: 86, infoText: 'Page {0} of {1} ({2} items)', pagesCountText: 'of' }); From 12fc29ae6b1362ca2dbdebe000f2d46155e3aad5 Mon Sep 17 00:00:00 2001 From: Andrey Dolzhikov Date: Wed, 18 Sep 2024 17:32:21 +0300 Subject: [PATCH 08/38] Generate wrappers --- packages/devextreme-angular/src/index.ts | 1 + packages/devextreme-angular/src/ui/all.ts | 3 + .../src/ui/data-grid/index.ts | 8 +- .../src/ui/data-grid/nested/pager.ts | 122 +++- .../src/ui/nested/base/index.ts | 1 + .../src/ui/nested/base/pager.ts | 175 ++++++ .../devextreme-angular/src/ui/nested/pager.ts | 101 +-- .../devextreme-angular/src/ui/pager/index.ts | 574 ++++++++++++++++++ .../src/ui/pager/ng-package.json | 5 + .../src/ui/tree-list/index.ts | 8 +- .../src/ui/tree-list/nested/pager.ts | 122 +++- packages/devextreme-react/src/data-grid.ts | 16 + packages/devextreme-react/src/index.ts | 1 + packages/devextreme-react/src/pager.ts | 50 ++ packages/devextreme-react/src/tree-list.ts | 16 + packages/devextreme-vue/src/data-grid.ts | 34 +- packages/devextreme-vue/src/index.ts | 1 + packages/devextreme-vue/src/pager.ts | 102 ++++ packages/devextreme-vue/src/tree-list.ts | 34 +- 19 files changed, 1291 insertions(+), 83 deletions(-) create mode 100644 packages/devextreme-angular/src/ui/nested/base/pager.ts create mode 100644 packages/devextreme-angular/src/ui/pager/index.ts create mode 100644 packages/devextreme-angular/src/ui/pager/ng-package.json create mode 100644 packages/devextreme-react/src/pager.ts create mode 100644 packages/devextreme-vue/src/pager.ts diff --git a/packages/devextreme-angular/src/index.ts b/packages/devextreme-angular/src/index.ts index 9a2c7a1d805f..51fde0be72a0 100644 --- a/packages/devextreme-angular/src/index.ts +++ b/packages/devextreme-angular/src/index.ts @@ -44,6 +44,7 @@ export { DxMapComponent, DxMapModule } from 'devextreme-angular/ui/map'; export { DxMenuComponent, DxMenuModule } from 'devextreme-angular/ui/menu'; export { DxMultiViewComponent, DxMultiViewModule } from 'devextreme-angular/ui/multi-view'; export { DxNumberBoxComponent, DxNumberBoxModule } from 'devextreme-angular/ui/number-box'; +export { DxPagerComponent, DxPagerModule } from 'devextreme-angular/ui/pager'; export { DxPieChartComponent, DxPieChartModule } from 'devextreme-angular/ui/pie-chart'; export { DxPivotGridComponent, DxPivotGridModule } from 'devextreme-angular/ui/pivot-grid'; export { DxPivotGridFieldChooserComponent, DxPivotGridFieldChooserModule } from 'devextreme-angular/ui/pivot-grid-field-chooser'; diff --git a/packages/devextreme-angular/src/ui/all.ts b/packages/devextreme-angular/src/ui/all.ts index add997831774..dee1c8608a77 100644 --- a/packages/devextreme-angular/src/ui/all.ts +++ b/packages/devextreme-angular/src/ui/all.ts @@ -40,6 +40,7 @@ import { DxMapModule } from 'devextreme-angular/ui/map'; import { DxMenuModule } from 'devextreme-angular/ui/menu'; import { DxMultiViewModule } from 'devextreme-angular/ui/multi-view'; import { DxNumberBoxModule } from 'devextreme-angular/ui/number-box'; +import { DxPagerModule } from 'devextreme-angular/ui/pager'; import { DxPieChartModule } from 'devextreme-angular/ui/pie-chart'; import { DxPivotGridModule } from 'devextreme-angular/ui/pivot-grid'; import { DxPivotGridFieldChooserModule } from 'devextreme-angular/ui/pivot-grid-field-chooser'; @@ -124,6 +125,7 @@ import { DxTemplateModule } from 'devextreme-angular/core'; DxMenuModule, DxMultiViewModule, DxNumberBoxModule, + DxPagerModule, DxPieChartModule, DxPivotGridModule, DxPivotGridFieldChooserModule, @@ -207,6 +209,7 @@ import { DxTemplateModule } from 'devextreme-angular/core'; DxMenuModule, DxMultiViewModule, DxNumberBoxModule, + DxPagerModule, DxPieChartModule, DxPivotGridModule, DxPivotGridFieldChooserModule, diff --git a/packages/devextreme-angular/src/ui/data-grid/index.ts b/packages/devextreme-angular/src/ui/data-grid/index.ts index c1e711821b3d..c83210d80bba 100644 --- a/packages/devextreme-angular/src/ui/data-grid/index.ts +++ b/packages/devextreme-angular/src/ui/data-grid/index.ts @@ -25,7 +25,7 @@ export { ExplicitTypes } from 'devextreme/ui/data_grid'; import { PositionConfig } from 'devextreme/animation/position'; import { DragDirection, DragHighlight, HorizontalAlignment, Mode, ScrollbarMode, SelectAllMode, SingleMultipleOrNone, SortOrder } from 'devextreme/common'; -import { ApplyFilterMode, ColumnChooserMode, ColumnChooserSearchConfig, ColumnChooserSelectionConfig, ColumnResizeMode, DataChange, DataRenderMode, EnterKeyAction, EnterKeyDirection, GridsEditMode, GridsEditRefreshMode, GroupExpandMode, HeaderFilterSearchConfig, NewRowPosition, PagerDisplayMode, PagerPageSize, SelectionColumnDisplayMode, StartEditAction, StateStoreType, SummaryType } from 'devextreme/common/grids'; +import { ApplyFilterMode, ColumnChooserMode, ColumnChooserSearchConfig, ColumnChooserSelectionConfig, ColumnResizeMode, DataChange, DataRenderMode, EnterKeyAction, EnterKeyDirection, GridsEditMode, GridsEditRefreshMode, GroupExpandMode, HeaderFilterSearchConfig, NewRowPosition, Pager, SelectionColumnDisplayMode, StartEditAction, StateStoreType, SummaryType } from 'devextreme/common/grids'; import { UserDefinedElement } from 'devextreme/core/element'; import { Store } from 'devextreme/data'; import DataSource, { Options as DataSourceOptions } from 'devextreme/data/data_source'; @@ -804,10 +804,10 @@ export class DxDataGridComponent extends DxComponent */ @Input() - get pager(): { allowedPageSizes?: Mode | Array, displayMode?: PagerDisplayMode, infoText?: string, label?: string, showInfo?: boolean, showNavigationButtons?: boolean, showPageSizeSelector?: boolean, visible?: Mode | boolean } { + get pager(): Pager { return this._getOption('pager'); } - set pager(value: { allowedPageSizes?: Mode | Array, displayMode?: PagerDisplayMode, infoText?: string, label?: string, showInfo?: boolean, showNavigationButtons?: boolean, showPageSizeSelector?: boolean, visible?: Mode | boolean }) { + set pager(value: Pager) { this._setOption('pager', value); } @@ -1832,7 +1832,7 @@ export class DxDataGridComponent extends DxComponent * This member supports the internal infrastructure and is not intended to be used directly from your code. */ - @Output() pagerChange: EventEmitter<{ allowedPageSizes?: Mode | Array, displayMode?: PagerDisplayMode, infoText?: string, label?: string, showInfo?: boolean, showNavigationButtons?: boolean, showPageSizeSelector?: boolean, visible?: Mode | boolean }>; + @Output() pagerChange: EventEmitter; /** diff --git a/packages/devextreme-angular/src/ui/data-grid/nested/pager.ts b/packages/devextreme-angular/src/ui/data-grid/nested/pager.ts index 9a07d8340370..451f0c044390 100644 --- a/packages/devextreme-angular/src/ui/data-grid/nested/pager.ts +++ b/packages/devextreme-angular/src/ui/data-grid/nested/pager.ts @@ -15,7 +15,7 @@ import { import { Mode } from 'devextreme/common'; -import { PagerDisplayMode, PagerPageSize } from 'devextreme/common/grids'; +import { PagerDisplayMode, PagerPageSize } from 'devextreme/ui/pager'; import { NestedOptionHost, @@ -30,6 +30,22 @@ import { NestedOption } from 'devextreme-angular/core'; providers: [NestedOptionHost] }) export class DxoDataGridPagerComponent extends NestedOption implements OnDestroy, OnInit { + @Input() + get accessKey(): string | undefined { + return this._getOption('accessKey'); + } + set accessKey(value: string | undefined) { + this._setOption('accessKey', value); + } + + @Input() + get activeStateEnabled(): boolean { + return this._getOption('activeStateEnabled'); + } + set activeStateEnabled(value: boolean) { + this._setOption('activeStateEnabled', value); + } + @Input() get allowedPageSizes(): Mode | Array { return this._getOption('allowedPageSizes'); @@ -38,6 +54,14 @@ export class DxoDataGridPagerComponent extends NestedOption implements OnDestroy this._setOption('allowedPageSizes', value); } + @Input() + get disabled(): boolean { + return this._getOption('disabled'); + } + set disabled(value: boolean) { + this._setOption('disabled', value); + } + @Input() get displayMode(): PagerDisplayMode { return this._getOption('displayMode'); @@ -46,6 +70,46 @@ export class DxoDataGridPagerComponent extends NestedOption implements OnDestroy this._setOption('displayMode', value); } + @Input() + get elementAttr(): any { + return this._getOption('elementAttr'); + } + set elementAttr(value: any) { + this._setOption('elementAttr', value); + } + + @Input() + get focusStateEnabled(): boolean { + return this._getOption('focusStateEnabled'); + } + set focusStateEnabled(value: boolean) { + this._setOption('focusStateEnabled', value); + } + + @Input() + get height(): number | Function | string | undefined { + return this._getOption('height'); + } + set height(value: number | Function | string | undefined) { + this._setOption('height', value); + } + + @Input() + get hint(): string | undefined { + return this._getOption('hint'); + } + set hint(value: string | undefined) { + this._setOption('hint', value); + } + + @Input() + get hoverStateEnabled(): boolean { + return this._getOption('hoverStateEnabled'); + } + set hoverStateEnabled(value: boolean) { + this._setOption('hoverStateEnabled', value); + } + @Input() get infoText(): string { return this._getOption('infoText'); @@ -62,6 +126,46 @@ export class DxoDataGridPagerComponent extends NestedOption implements OnDestroy this._setOption('label', value); } + @Input() + get onContentReady(): Function { + return this._getOption('onContentReady'); + } + set onContentReady(value: Function) { + this._setOption('onContentReady', value); + } + + @Input() + get onDisposing(): Function { + return this._getOption('onDisposing'); + } + set onDisposing(value: Function) { + this._setOption('onDisposing', value); + } + + @Input() + get onInitialized(): Function { + return this._getOption('onInitialized'); + } + set onInitialized(value: Function) { + this._setOption('onInitialized', value); + } + + @Input() + get onOptionChanged(): Function { + return this._getOption('onOptionChanged'); + } + set onOptionChanged(value: Function) { + this._setOption('onOptionChanged', value); + } + + @Input() + get rtlEnabled(): boolean { + return this._getOption('rtlEnabled'); + } + set rtlEnabled(value: boolean) { + this._setOption('rtlEnabled', value); + } + @Input() get showInfo(): boolean { return this._getOption('showInfo'); @@ -86,6 +190,14 @@ export class DxoDataGridPagerComponent extends NestedOption implements OnDestroy this._setOption('showPageSizeSelector', value); } + @Input() + get tabIndex(): number { + return this._getOption('tabIndex'); + } + set tabIndex(value: number) { + this._setOption('tabIndex', value); + } + @Input() get visible(): Mode | boolean { return this._getOption('visible'); @@ -94,6 +206,14 @@ export class DxoDataGridPagerComponent extends NestedOption implements OnDestroy this._setOption('visible', value); } + @Input() + get width(): number | Function | string | undefined { + return this._getOption('width'); + } + set width(value: number | Function | string | undefined) { + this._setOption('width', value); + } + protected get _optionPath() { return 'pager'; diff --git a/packages/devextreme-angular/src/ui/nested/base/index.ts b/packages/devextreme-angular/src/ui/nested/base/index.ts index 91ec17641925..6e9515165ed5 100644 --- a/packages/devextreme-angular/src/ui/nested/base/index.ts +++ b/packages/devextreme-angular/src/ui/nested/base/index.ts @@ -38,6 +38,7 @@ export * from './html-editor-mention-dxi'; export * from './html-editor-table-context-menu'; export * from './html-editor-table-resizing'; export * from './html-editor-variables'; +export * from './pager'; export * from './pivot-grid-data-source'; export * from './popup-options'; export * from './position-config'; diff --git a/packages/devextreme-angular/src/ui/nested/base/pager.ts b/packages/devextreme-angular/src/ui/nested/base/pager.ts new file mode 100644 index 000000000000..246ba8d84acf --- /dev/null +++ b/packages/devextreme-angular/src/ui/nested/base/pager.ts @@ -0,0 +1,175 @@ +/* tslint:disable:max-line-length */ + +import { NestedOption } from 'devextreme-angular/core'; +import { + Component, +} from '@angular/core'; + +import { Mode } from 'devextreme/common'; +import { PagerDisplayMode, PagerPageSize } from 'devextreme/ui/pager'; + +@Component({ + template: '' +}) +export abstract class DxoPager extends NestedOption { + get accessKey(): string | undefined { + return this._getOption('accessKey'); + } + set accessKey(value: string | undefined) { + this._setOption('accessKey', value); + } + + get activeStateEnabled(): boolean { + return this._getOption('activeStateEnabled'); + } + set activeStateEnabled(value: boolean) { + this._setOption('activeStateEnabled', value); + } + + get allowedPageSizes(): Mode | Array { + return this._getOption('allowedPageSizes'); + } + set allowedPageSizes(value: Mode | Array) { + this._setOption('allowedPageSizes', value); + } + + get disabled(): boolean { + return this._getOption('disabled'); + } + set disabled(value: boolean) { + this._setOption('disabled', value); + } + + get displayMode(): PagerDisplayMode { + return this._getOption('displayMode'); + } + set displayMode(value: PagerDisplayMode) { + this._setOption('displayMode', value); + } + + get elementAttr(): any { + return this._getOption('elementAttr'); + } + set elementAttr(value: any) { + this._setOption('elementAttr', value); + } + + get focusStateEnabled(): boolean { + return this._getOption('focusStateEnabled'); + } + set focusStateEnabled(value: boolean) { + this._setOption('focusStateEnabled', value); + } + + get height(): number | Function | string | undefined { + return this._getOption('height'); + } + set height(value: number | Function | string | undefined) { + this._setOption('height', value); + } + + get hint(): string | undefined { + return this._getOption('hint'); + } + set hint(value: string | undefined) { + this._setOption('hint', value); + } + + get hoverStateEnabled(): boolean { + return this._getOption('hoverStateEnabled'); + } + set hoverStateEnabled(value: boolean) { + this._setOption('hoverStateEnabled', value); + } + + get infoText(): string { + return this._getOption('infoText'); + } + set infoText(value: string) { + this._setOption('infoText', value); + } + + get label(): string { + return this._getOption('label'); + } + set label(value: string) { + this._setOption('label', value); + } + + get onContentReady(): Function { + return this._getOption('onContentReady'); + } + set onContentReady(value: Function) { + this._setOption('onContentReady', value); + } + + get onDisposing(): Function { + return this._getOption('onDisposing'); + } + set onDisposing(value: Function) { + this._setOption('onDisposing', value); + } + + get onInitialized(): Function { + return this._getOption('onInitialized'); + } + set onInitialized(value: Function) { + this._setOption('onInitialized', value); + } + + get onOptionChanged(): Function { + return this._getOption('onOptionChanged'); + } + set onOptionChanged(value: Function) { + this._setOption('onOptionChanged', value); + } + + get rtlEnabled(): boolean { + return this._getOption('rtlEnabled'); + } + set rtlEnabled(value: boolean) { + this._setOption('rtlEnabled', value); + } + + get showInfo(): boolean { + return this._getOption('showInfo'); + } + set showInfo(value: boolean) { + this._setOption('showInfo', value); + } + + get showNavigationButtons(): boolean { + return this._getOption('showNavigationButtons'); + } + set showNavigationButtons(value: boolean) { + this._setOption('showNavigationButtons', value); + } + + get showPageSizeSelector(): boolean { + return this._getOption('showPageSizeSelector'); + } + set showPageSizeSelector(value: boolean) { + this._setOption('showPageSizeSelector', value); + } + + get tabIndex(): number { + return this._getOption('tabIndex'); + } + set tabIndex(value: number) { + this._setOption('tabIndex', value); + } + + get visible(): Mode | boolean { + return this._getOption('visible'); + } + set visible(value: Mode | boolean) { + this._setOption('visible', value); + } + + get width(): number | Function | string | undefined { + return this._getOption('width'); + } + set width(value: number | Function | string | undefined) { + this._setOption('width', value); + } +} diff --git a/packages/devextreme-angular/src/ui/nested/pager.ts b/packages/devextreme-angular/src/ui/nested/pager.ts index 33cc7c4da21e..a02dac1b22f6 100644 --- a/packages/devextreme-angular/src/ui/nested/pager.ts +++ b/packages/devextreme-angular/src/ui/nested/pager.ts @@ -1,5 +1,6 @@ /* tslint:disable:max-line-length */ +/* tslint:disable:use-input-property-decorator */ import { Component, @@ -7,93 +8,51 @@ import { OnDestroy, NgModule, Host, - SkipSelf, - Input + SkipSelf } from '@angular/core'; -import { Mode } from 'devextreme/common'; -import { PagerDisplayMode, PagerPageSize } from 'devextreme/common/grids'; import { NestedOptionHost, } from 'devextreme-angular/core'; -import { NestedOption } from 'devextreme-angular/core'; +import { DxoPager } from './base/pager'; @Component({ selector: 'dxo-pager', template: '', styles: [''], - providers: [NestedOptionHost] + providers: [NestedOptionHost], + inputs: [ + 'accessKey', + 'activeStateEnabled', + 'allowedPageSizes', + 'disabled', + 'displayMode', + 'elementAttr', + 'focusStateEnabled', + 'height', + 'hint', + 'hoverStateEnabled', + 'infoText', + 'label', + 'onContentReady', + 'onDisposing', + 'onInitialized', + 'onOptionChanged', + 'rtlEnabled', + 'showInfo', + 'showNavigationButtons', + 'showPageSizeSelector', + 'tabIndex', + 'visible', + 'width' + ] }) -export class DxoPagerComponent extends NestedOption implements OnDestroy, OnInit { - @Input() - get allowedPageSizes(): Mode | Array { - return this._getOption('allowedPageSizes'); - } - set allowedPageSizes(value: Mode | Array) { - this._setOption('allowedPageSizes', value); - } - - @Input() - get displayMode(): PagerDisplayMode { - return this._getOption('displayMode'); - } - set displayMode(value: PagerDisplayMode) { - this._setOption('displayMode', value); - } - - @Input() - get infoText(): string { - return this._getOption('infoText'); - } - set infoText(value: string) { - this._setOption('infoText', value); - } - - @Input() - get label(): string { - return this._getOption('label'); - } - set label(value: string) { - this._setOption('label', value); - } - - @Input() - get showInfo(): boolean { - return this._getOption('showInfo'); - } - set showInfo(value: boolean) { - this._setOption('showInfo', value); - } - - @Input() - get showNavigationButtons(): boolean { - return this._getOption('showNavigationButtons'); - } - set showNavigationButtons(value: boolean) { - this._setOption('showNavigationButtons', value); - } - - @Input() - get showPageSizeSelector(): boolean { - return this._getOption('showPageSizeSelector'); - } - set showPageSizeSelector(value: boolean) { - this._setOption('showPageSizeSelector', value); - } - - @Input() - get visible(): Mode | boolean { - return this._getOption('visible'); - } - set visible(value: Mode | boolean) { - this._setOption('visible', value); - } - +export class DxoPagerComponent extends DxoPager implements OnDestroy, OnInit { protected get _optionPath() { return 'pager'; diff --git a/packages/devextreme-angular/src/ui/pager/index.ts b/packages/devextreme-angular/src/ui/pager/index.ts new file mode 100644 index 000000000000..d7b81c9db1ac --- /dev/null +++ b/packages/devextreme-angular/src/ui/pager/index.ts @@ -0,0 +1,574 @@ +/* tslint:disable:max-line-length */ + + +import { + TransferState, + Component, + NgModule, + ElementRef, + NgZone, + PLATFORM_ID, + Inject, + + Input, + Output, + OnDestroy, + EventEmitter, + OnChanges, + DoCheck, + SimpleChanges +} from '@angular/core'; + + +import { Mode } from 'devextreme/common'; +import { PagerDisplayMode, PagerPageSize } from 'devextreme/ui/pager'; + +import DxPager from 'devextreme/ui/pager'; + + +import { + DxComponent, + DxTemplateHost, + DxIntegrationModule, + DxTemplateModule, + NestedOptionHost, + IterableDifferHelper, + WatcherHelper +} from 'devextreme-angular/core'; + + + + + + +/** + * [descr:dxPager] + + */ +@Component({ + selector: 'dx-pager', + template: '', + providers: [ + DxTemplateHost, + WatcherHelper, + NestedOptionHost, + IterableDifferHelper + ] +}) +export class DxPagerComponent extends DxComponent implements OnDestroy, OnChanges, DoCheck { + instance: DxPager = null; + + /** + * [descr:WidgetOptions.accessKey] + + */ + @Input() + get accessKey(): string | undefined { + return this._getOption('accessKey'); + } + set accessKey(value: string | undefined) { + this._setOption('accessKey', value); + } + + + /** + * [descr:WidgetOptions.activeStateEnabled] + + */ + @Input() + get activeStateEnabled(): boolean { + return this._getOption('activeStateEnabled'); + } + set activeStateEnabled(value: boolean) { + this._setOption('activeStateEnabled', value); + } + + + /** + * [descr:BasePagerOptions.allowedPageSizes] + + */ + @Input() + get allowedPageSizes(): Mode | Array { + return this._getOption('allowedPageSizes'); + } + set allowedPageSizes(value: Mode | Array) { + this._setOption('allowedPageSizes', value); + } + + + /** + * [descr:WidgetOptions.disabled] + + */ + @Input() + get disabled(): boolean { + return this._getOption('disabled'); + } + set disabled(value: boolean) { + this._setOption('disabled', value); + } + + + /** + * [descr:BasePagerOptions.displayMode] + + */ + @Input() + get displayMode(): PagerDisplayMode { + return this._getOption('displayMode'); + } + set displayMode(value: PagerDisplayMode) { + this._setOption('displayMode', value); + } + + + /** + * [descr:DOMComponentOptions.elementAttr] + + */ + @Input() + get elementAttr(): any { + return this._getOption('elementAttr'); + } + set elementAttr(value: any) { + this._setOption('elementAttr', value); + } + + + /** + * [descr:WidgetOptions.focusStateEnabled] + + */ + @Input() + get focusStateEnabled(): boolean { + return this._getOption('focusStateEnabled'); + } + set focusStateEnabled(value: boolean) { + this._setOption('focusStateEnabled', value); + } + + + /** + * [descr:DOMComponentOptions.height] + + */ + @Input() + get height(): number | Function | string | undefined { + return this._getOption('height'); + } + set height(value: number | Function | string | undefined) { + this._setOption('height', value); + } + + + /** + * [descr:WidgetOptions.hint] + + */ + @Input() + get hint(): string | undefined { + return this._getOption('hint'); + } + set hint(value: string | undefined) { + this._setOption('hint', value); + } + + + /** + * [descr:WidgetOptions.hoverStateEnabled] + + */ + @Input() + get hoverStateEnabled(): boolean { + return this._getOption('hoverStateEnabled'); + } + set hoverStateEnabled(value: boolean) { + this._setOption('hoverStateEnabled', value); + } + + + /** + * [descr:BasePagerOptions.infoText] + + */ + @Input() + get infoText(): string { + return this._getOption('infoText'); + } + set infoText(value: string) { + this._setOption('infoText', value); + } + + + /** + * [descr:BasePagerOptions.label] + + */ + @Input() + get label(): string { + return this._getOption('label'); + } + set label(value: string) { + this._setOption('label', value); + } + + + /** + * [descr:DOMComponentOptions.rtlEnabled] + + */ + @Input() + get rtlEnabled(): boolean { + return this._getOption('rtlEnabled'); + } + set rtlEnabled(value: boolean) { + this._setOption('rtlEnabled', value); + } + + + /** + * [descr:BasePagerOptions.showInfo] + + */ + @Input() + get showInfo(): boolean { + return this._getOption('showInfo'); + } + set showInfo(value: boolean) { + this._setOption('showInfo', value); + } + + + /** + * [descr:BasePagerOptions.showNavigationButtons] + + */ + @Input() + get showNavigationButtons(): boolean { + return this._getOption('showNavigationButtons'); + } + set showNavigationButtons(value: boolean) { + this._setOption('showNavigationButtons', value); + } + + + /** + * [descr:BasePagerOptions.showPageSizeSelector] + + */ + @Input() + get showPageSizeSelector(): boolean { + return this._getOption('showPageSizeSelector'); + } + set showPageSizeSelector(value: boolean) { + this._setOption('showPageSizeSelector', value); + } + + + /** + * [descr:WidgetOptions.tabIndex] + + */ + @Input() + get tabIndex(): number { + return this._getOption('tabIndex'); + } + set tabIndex(value: number) { + this._setOption('tabIndex', value); + } + + + /** + * [descr:WidgetOptions.visible] + + */ + @Input() + get visible(): boolean { + return this._getOption('visible'); + } + set visible(value: boolean) { + this._setOption('visible', value); + } + + + /** + * [descr:DOMComponentOptions.width] + + */ + @Input() + get width(): number | Function | string | undefined { + return this._getOption('width'); + } + set width(value: number | Function | string | undefined) { + this._setOption('width', value); + } + + /** + + * [descr:WidgetOptions.onContentReady] + + + */ + @Output() onContentReady: EventEmitter; + + /** + + * [descr:DOMComponentOptions.onDisposing] + + + */ + @Output() onDisposing: EventEmitter; + + /** + + * [descr:ComponentOptions.onInitialized] + + + */ + @Output() onInitialized: EventEmitter; + + /** + + * [descr:DOMComponentOptions.onOptionChanged] + + + */ + @Output() onOptionChanged: EventEmitter; + + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() accessKeyChange: EventEmitter; + + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() activeStateEnabledChange: EventEmitter; + + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() allowedPageSizesChange: EventEmitter>; + + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() disabledChange: EventEmitter; + + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() displayModeChange: EventEmitter; + + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() elementAttrChange: EventEmitter; + + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() focusStateEnabledChange: EventEmitter; + + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() heightChange: EventEmitter; + + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() hintChange: EventEmitter; + + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() hoverStateEnabledChange: EventEmitter; + + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() infoTextChange: EventEmitter; + + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() labelChange: EventEmitter; + + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() rtlEnabledChange: EventEmitter; + + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() showInfoChange: EventEmitter; + + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() showNavigationButtonsChange: EventEmitter; + + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() showPageSizeSelectorChange: EventEmitter; + + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() tabIndexChange: EventEmitter; + + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() visibleChange: EventEmitter; + + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() widthChange: EventEmitter; + + + + + + + + + constructor(elementRef: ElementRef, ngZone: NgZone, templateHost: DxTemplateHost, + private _watcherHelper: WatcherHelper, + private _idh: IterableDifferHelper, + optionHost: NestedOptionHost, + transferState: TransferState, + @Inject(PLATFORM_ID) platformId: any) { + + super(elementRef, ngZone, templateHost, _watcherHelper, transferState, platformId); + + this._createEventEmitters([ + { subscribe: 'contentReady', emit: 'onContentReady' }, + { subscribe: 'disposing', emit: 'onDisposing' }, + { subscribe: 'initialized', emit: 'onInitialized' }, + { subscribe: 'optionChanged', emit: 'onOptionChanged' }, + { emit: 'accessKeyChange' }, + { emit: 'activeStateEnabledChange' }, + { emit: 'allowedPageSizesChange' }, + { emit: 'disabledChange' }, + { emit: 'displayModeChange' }, + { emit: 'elementAttrChange' }, + { emit: 'focusStateEnabledChange' }, + { emit: 'heightChange' }, + { emit: 'hintChange' }, + { emit: 'hoverStateEnabledChange' }, + { emit: 'infoTextChange' }, + { emit: 'labelChange' }, + { emit: 'rtlEnabledChange' }, + { emit: 'showInfoChange' }, + { emit: 'showNavigationButtonsChange' }, + { emit: 'showPageSizeSelectorChange' }, + { emit: 'tabIndexChange' }, + { emit: 'visibleChange' }, + { emit: 'widthChange' } + ]); + + this._idh.setHost(this); + optionHost.setHost(this); + } + + protected _createInstance(element, options) { + + return new DxPager(element, options); + } + + + ngOnDestroy() { + this._destroyWidget(); + } + + ngOnChanges(changes: SimpleChanges) { + super.ngOnChanges(changes); + this.setupChanges('allowedPageSizes', changes); + } + + setupChanges(prop: string, changes: SimpleChanges) { + if (!(prop in this._optionsToUpdate)) { + this._idh.setup(prop, changes); + } + } + + ngDoCheck() { + this._idh.doCheck('allowedPageSizes'); + this._watcherHelper.checkWatchers(); + super.ngDoCheck(); + super.clearChangedOptions(); + } + + _setOption(name: string, value: any) { + let isSetup = this._idh.setupSingle(name, value); + let isChanged = this._idh.getChanges(name, value) !== null; + + if (isSetup || isChanged) { + super._setOption(name, value); + } + } +} + +@NgModule({ + imports: [ + DxIntegrationModule, + DxTemplateModule + ], + declarations: [ + DxPagerComponent + ], + exports: [ + DxPagerComponent, + DxTemplateModule + ] +}) +export class DxPagerModule { } + +import type * as DxPagerTypes from "devextreme/ui/pager_types"; +export { DxPagerTypes }; + + diff --git a/packages/devextreme-angular/src/ui/pager/ng-package.json b/packages/devextreme-angular/src/ui/pager/ng-package.json new file mode 100644 index 000000000000..3360c83b3395 --- /dev/null +++ b/packages/devextreme-angular/src/ui/pager/ng-package.json @@ -0,0 +1,5 @@ +{ + "lib": { + "entryFile": "index.ts" + } +} \ No newline at end of file diff --git a/packages/devextreme-angular/src/ui/tree-list/index.ts b/packages/devextreme-angular/src/ui/tree-list/index.ts index 11e7eddf39f2..6c7a4a8f1a09 100644 --- a/packages/devextreme-angular/src/ui/tree-list/index.ts +++ b/packages/devextreme-angular/src/ui/tree-list/index.ts @@ -25,7 +25,7 @@ export { ExplicitTypes } from 'devextreme/ui/tree_list'; import { PositionConfig } from 'devextreme/animation/position'; import { DataStructure, DragDirection, DragHighlight, Mode, ScrollbarMode, ScrollMode, SingleMultipleOrNone, SortOrder } from 'devextreme/common'; -import { ApplyFilterMode, ColumnChooserMode, ColumnChooserSearchConfig, ColumnChooserSelectionConfig, ColumnResizeMode, DataChange, DataRenderMode, EnterKeyAction, EnterKeyDirection, GridsEditMode, GridsEditRefreshMode, HeaderFilterSearchConfig, PagerDisplayMode, PagerPageSize, StartEditAction, StateStoreType } from 'devextreme/common/grids'; +import { ApplyFilterMode, ColumnChooserMode, ColumnChooserSearchConfig, ColumnChooserSelectionConfig, ColumnResizeMode, DataChange, DataRenderMode, EnterKeyAction, EnterKeyDirection, GridsEditMode, GridsEditRefreshMode, HeaderFilterSearchConfig, Pager, StartEditAction, StateStoreType } from 'devextreme/common/grids'; import { UserDefinedElement } from 'devextreme/core/element'; import { Store } from 'devextreme/data'; import DataSource, { Options as DataSourceOptions } from 'devextreme/data/data_source'; @@ -809,10 +809,10 @@ export class DxTreeListComponent extends DxComponent */ @Input() - get pager(): { allowedPageSizes?: Mode | Array, displayMode?: PagerDisplayMode, infoText?: string, label?: string, showInfo?: boolean, showNavigationButtons?: boolean, showPageSizeSelector?: boolean, visible?: Mode | boolean } { + get pager(): Pager { return this._getOption('pager'); } - set pager(value: { allowedPageSizes?: Mode | Array, displayMode?: PagerDisplayMode, infoText?: string, label?: string, showInfo?: boolean, showNavigationButtons?: boolean, showPageSizeSelector?: boolean, visible?: Mode | boolean }) { + set pager(value: Pager) { this._setOption('pager', value); } @@ -1823,7 +1823,7 @@ export class DxTreeListComponent extends DxComponent * This member supports the internal infrastructure and is not intended to be used directly from your code. */ - @Output() pagerChange: EventEmitter<{ allowedPageSizes?: Mode | Array, displayMode?: PagerDisplayMode, infoText?: string, label?: string, showInfo?: boolean, showNavigationButtons?: boolean, showPageSizeSelector?: boolean, visible?: Mode | boolean }>; + @Output() pagerChange: EventEmitter; /** diff --git a/packages/devextreme-angular/src/ui/tree-list/nested/pager.ts b/packages/devextreme-angular/src/ui/tree-list/nested/pager.ts index ad7c08c84324..fc1f99732680 100644 --- a/packages/devextreme-angular/src/ui/tree-list/nested/pager.ts +++ b/packages/devextreme-angular/src/ui/tree-list/nested/pager.ts @@ -15,7 +15,7 @@ import { import { Mode } from 'devextreme/common'; -import { PagerDisplayMode, PagerPageSize } from 'devextreme/common/grids'; +import { PagerDisplayMode, PagerPageSize } from 'devextreme/ui/pager'; import { NestedOptionHost, @@ -30,6 +30,22 @@ import { NestedOption } from 'devextreme-angular/core'; providers: [NestedOptionHost] }) export class DxoTreeListPagerComponent extends NestedOption implements OnDestroy, OnInit { + @Input() + get accessKey(): string | undefined { + return this._getOption('accessKey'); + } + set accessKey(value: string | undefined) { + this._setOption('accessKey', value); + } + + @Input() + get activeStateEnabled(): boolean { + return this._getOption('activeStateEnabled'); + } + set activeStateEnabled(value: boolean) { + this._setOption('activeStateEnabled', value); + } + @Input() get allowedPageSizes(): Mode | Array { return this._getOption('allowedPageSizes'); @@ -38,6 +54,14 @@ export class DxoTreeListPagerComponent extends NestedOption implements OnDestroy this._setOption('allowedPageSizes', value); } + @Input() + get disabled(): boolean { + return this._getOption('disabled'); + } + set disabled(value: boolean) { + this._setOption('disabled', value); + } + @Input() get displayMode(): PagerDisplayMode { return this._getOption('displayMode'); @@ -46,6 +70,46 @@ export class DxoTreeListPagerComponent extends NestedOption implements OnDestroy this._setOption('displayMode', value); } + @Input() + get elementAttr(): any { + return this._getOption('elementAttr'); + } + set elementAttr(value: any) { + this._setOption('elementAttr', value); + } + + @Input() + get focusStateEnabled(): boolean { + return this._getOption('focusStateEnabled'); + } + set focusStateEnabled(value: boolean) { + this._setOption('focusStateEnabled', value); + } + + @Input() + get height(): number | Function | string | undefined { + return this._getOption('height'); + } + set height(value: number | Function | string | undefined) { + this._setOption('height', value); + } + + @Input() + get hint(): string | undefined { + return this._getOption('hint'); + } + set hint(value: string | undefined) { + this._setOption('hint', value); + } + + @Input() + get hoverStateEnabled(): boolean { + return this._getOption('hoverStateEnabled'); + } + set hoverStateEnabled(value: boolean) { + this._setOption('hoverStateEnabled', value); + } + @Input() get infoText(): string { return this._getOption('infoText'); @@ -62,6 +126,46 @@ export class DxoTreeListPagerComponent extends NestedOption implements OnDestroy this._setOption('label', value); } + @Input() + get onContentReady(): Function { + return this._getOption('onContentReady'); + } + set onContentReady(value: Function) { + this._setOption('onContentReady', value); + } + + @Input() + get onDisposing(): Function { + return this._getOption('onDisposing'); + } + set onDisposing(value: Function) { + this._setOption('onDisposing', value); + } + + @Input() + get onInitialized(): Function { + return this._getOption('onInitialized'); + } + set onInitialized(value: Function) { + this._setOption('onInitialized', value); + } + + @Input() + get onOptionChanged(): Function { + return this._getOption('onOptionChanged'); + } + set onOptionChanged(value: Function) { + this._setOption('onOptionChanged', value); + } + + @Input() + get rtlEnabled(): boolean { + return this._getOption('rtlEnabled'); + } + set rtlEnabled(value: boolean) { + this._setOption('rtlEnabled', value); + } + @Input() get showInfo(): boolean { return this._getOption('showInfo'); @@ -86,6 +190,14 @@ export class DxoTreeListPagerComponent extends NestedOption implements OnDestroy this._setOption('showPageSizeSelector', value); } + @Input() + get tabIndex(): number { + return this._getOption('tabIndex'); + } + set tabIndex(value: number) { + this._setOption('tabIndex', value); + } + @Input() get visible(): Mode | boolean { return this._getOption('visible'); @@ -94,6 +206,14 @@ export class DxoTreeListPagerComponent extends NestedOption implements OnDestroy this._setOption('visible', value); } + @Input() + get width(): number | Function | string | undefined { + return this._getOption('width'); + } + set width(value: number | Function | string | undefined) { + this._setOption('width', value); + } + protected get _optionPath() { return 'pager'; diff --git a/packages/devextreme-react/src/data-grid.ts b/packages/devextreme-react/src/data-grid.ts index 5a7a242e658d..3131956535b3 100644 --- a/packages/devextreme-react/src/data-grid.ts +++ b/packages/devextreme-react/src/data-grid.ts @@ -1953,14 +1953,30 @@ const OperationDescriptions: typeof _componentOperationDescriptions & IElementDe // owners: // DataGrid type IPagerProps = React.PropsWithChildren<{ + accessKey?: string; + activeStateEnabled?: boolean; allowedPageSizes?: Array | "auto"; + bindingOptions?: Record; + disabled?: boolean; displayMode?: "adaptive" | "compact" | "full"; + elementAttr?: Record; + focusStateEnabled?: boolean; + height?: (() => number | string) | number | string; + hint?: string; + hoverStateEnabled?: boolean; infoText?: string; label?: string; + onContentReady?: ((e: EventInfo) => void); + onDisposing?: ((e: EventInfo) => void); + onInitialized?: ((e: { component: Component, element: any }) => void); + onOptionChanged?: ((e: { component: DOMComponent, element: any, fullName: string, model: any, name: string, previousValue: any, value: any }) => void); + rtlEnabled?: boolean; showInfo?: boolean; showNavigationButtons?: boolean; showPageSizeSelector?: boolean; + tabIndex?: number; visible?: boolean | "auto"; + width?: (() => number | string) | number | string; }> const _componentPager = memo( (props: IPagerProps) => { diff --git a/packages/devextreme-react/src/index.ts b/packages/devextreme-react/src/index.ts index 375b8e90f902..cd42c129b48a 100644 --- a/packages/devextreme-react/src/index.ts +++ b/packages/devextreme-react/src/index.ts @@ -40,6 +40,7 @@ export { Map } from "./map"; export { Menu } from "./menu"; export { MultiView } from "./multi-view"; export { NumberBox } from "./number-box"; +export { Pager } from "./pager"; export { PieChart } from "./pie-chart"; export { PivotGrid } from "./pivot-grid"; export { PivotGridFieldChooser } from "./pivot-grid-field-chooser"; diff --git a/packages/devextreme-react/src/pager.ts b/packages/devextreme-react/src/pager.ts new file mode 100644 index 000000000000..780133a0b3f9 --- /dev/null +++ b/packages/devextreme-react/src/pager.ts @@ -0,0 +1,50 @@ +"use client" +import * as React from "react"; +import { memo, forwardRef, useImperativeHandle, useRef, useMemo, ForwardedRef, Ref, ReactElement } from "react"; +import dxPager, { + Properties +} from "devextreme/ui/pager"; + +import { Component as BaseComponent, IHtmlOptions, ComponentRef } from "./core/component"; + +type IPagerOptions = React.PropsWithChildren + +interface PagerRef { + instance: () => dxPager; +} + +const Pager = memo( + forwardRef( + (props: React.PropsWithChildren, ref: ForwardedRef) => { + const baseRef = useRef(null); + + useImperativeHandle(ref, () => ( + { + instance() { + return baseRef.current?.getInstance(); + } + } + ), [baseRef.current]); + + const independentEvents = useMemo(() => (["onContentReady","onDisposing","onInitialized"]), []); + + return ( + React.createElement(BaseComponent>, { + WidgetClass: dxPager, + ref: baseRef, + independentEvents, + ...props, + }) + ); + }, + ), +) as (props: React.PropsWithChildren & { ref?: Ref }) => ReactElement | null; +export default Pager; +export { + Pager, + IPagerOptions, + PagerRef +}; +import type * as PagerTypes from 'devextreme/ui/pager_types'; +export { PagerTypes }; + diff --git a/packages/devextreme-react/src/tree-list.ts b/packages/devextreme-react/src/tree-list.ts index 801eea1f7bcc..fabb383261b6 100644 --- a/packages/devextreme-react/src/tree-list.ts +++ b/packages/devextreme-react/src/tree-list.ts @@ -1658,14 +1658,30 @@ const OperationDescriptions: typeof _componentOperationDescriptions & IElementDe // owners: // TreeList type IPagerProps = React.PropsWithChildren<{ + accessKey?: string; + activeStateEnabled?: boolean; allowedPageSizes?: Array | "auto"; + bindingOptions?: Record; + disabled?: boolean; displayMode?: "adaptive" | "compact" | "full"; + elementAttr?: Record; + focusStateEnabled?: boolean; + height?: (() => number | string) | number | string; + hint?: string; + hoverStateEnabled?: boolean; infoText?: string; label?: string; + onContentReady?: ((e: EventInfo) => void); + onDisposing?: ((e: EventInfo) => void); + onInitialized?: ((e: { component: Component, element: any }) => void); + onOptionChanged?: ((e: { component: DOMComponent, element: any, fullName: string, model: any, name: string, previousValue: any, value: any }) => void); + rtlEnabled?: boolean; showInfo?: boolean; showNavigationButtons?: boolean; showPageSizeSelector?: boolean; + tabIndex?: number; visible?: boolean | "auto"; + width?: (() => number | string) | number | string; }> const _componentPager = memo( (props: IPagerProps) => { diff --git a/packages/devextreme-vue/src/data-grid.ts b/packages/devextreme-vue/src/data-grid.ts index 752aee36edf5..0348b51279cb 100644 --- a/packages/devextreme-vue/src/data-grid.ts +++ b/packages/devextreme-vue/src/data-grid.ts @@ -2091,24 +2091,56 @@ const DxPager = createConfigurationComponent({ emits: { "update:isActive": null, "update:hoveredElement": null, + "update:accessKey": null, + "update:activeStateEnabled": null, "update:allowedPageSizes": null, + "update:bindingOptions": null, + "update:disabled": null, "update:displayMode": null, + "update:elementAttr": null, + "update:focusStateEnabled": null, + "update:height": null, + "update:hint": null, + "update:hoverStateEnabled": null, "update:infoText": null, "update:label": null, + "update:onContentReady": null, + "update:onDisposing": null, + "update:onInitialized": null, + "update:onOptionChanged": null, + "update:rtlEnabled": null, "update:showInfo": null, "update:showNavigationButtons": null, "update:showPageSizeSelector": null, + "update:tabIndex": null, "update:visible": null, + "update:width": null, }, props: { + accessKey: String, + activeStateEnabled: Boolean, allowedPageSizes: [Array, String], + bindingOptions: Object, + disabled: Boolean, displayMode: String, + elementAttr: Object, + focusStateEnabled: Boolean, + height: [Function, Number, String], + hint: String, + hoverStateEnabled: Boolean, infoText: String, label: String, + onContentReady: Function, + onDisposing: Function, + onInitialized: Function, + onOptionChanged: Function, + rtlEnabled: Boolean, showInfo: Boolean, showNavigationButtons: Boolean, showPageSizeSelector: Boolean, - visible: [Boolean, String] + tabIndex: Number, + visible: [Boolean, String], + width: [Function, Number, String] } }); (DxPager as any).$_optionName = "pager"; diff --git a/packages/devextreme-vue/src/index.ts b/packages/devextreme-vue/src/index.ts index 2bb75ddc7a98..aad924ccda58 100644 --- a/packages/devextreme-vue/src/index.ts +++ b/packages/devextreme-vue/src/index.ts @@ -39,6 +39,7 @@ export { DxMap } from "./map"; export { DxMenu } from "./menu"; export { DxMultiView } from "./multi-view"; export { DxNumberBox } from "./number-box"; +export { DxPager } from "./pager"; export { DxPieChart } from "./pie-chart"; export { DxPivotGrid } from "./pivot-grid"; export { DxPivotGridFieldChooser } from "./pivot-grid-field-chooser"; diff --git a/packages/devextreme-vue/src/pager.ts b/packages/devextreme-vue/src/pager.ts new file mode 100644 index 000000000000..0021b57a43eb --- /dev/null +++ b/packages/devextreme-vue/src/pager.ts @@ -0,0 +1,102 @@ +import Pager, { Properties } from "devextreme/ui/pager"; +import { createComponent } from "./core/index"; + +type AccessibleOptions = Pick; + +interface DxPager extends AccessibleOptions { + readonly instance?: Pager; +} +const DxPager = createComponent({ + props: { + accessKey: String, + activeStateEnabled: Boolean, + allowedPageSizes: [Array, String], + disabled: Boolean, + displayMode: String, + elementAttr: Object, + focusStateEnabled: Boolean, + height: [Function, Number, String], + hint: String, + hoverStateEnabled: Boolean, + infoText: String, + label: String, + onContentReady: Function, + onDisposing: Function, + onInitialized: Function, + onOptionChanged: Function, + rtlEnabled: Boolean, + showInfo: Boolean, + showNavigationButtons: Boolean, + showPageSizeSelector: Boolean, + tabIndex: Number, + visible: Boolean, + width: [Function, Number, String] + }, + emits: { + "update:isActive": null, + "update:hoveredElement": null, + "update:accessKey": null, + "update:activeStateEnabled": null, + "update:allowedPageSizes": null, + "update:disabled": null, + "update:displayMode": null, + "update:elementAttr": null, + "update:focusStateEnabled": null, + "update:height": null, + "update:hint": null, + "update:hoverStateEnabled": null, + "update:infoText": null, + "update:label": null, + "update:onContentReady": null, + "update:onDisposing": null, + "update:onInitialized": null, + "update:onOptionChanged": null, + "update:rtlEnabled": null, + "update:showInfo": null, + "update:showNavigationButtons": null, + "update:showPageSizeSelector": null, + "update:tabIndex": null, + "update:visible": null, + "update:width": null, + }, + computed: { + instance(): Pager { + return (this as any).$_instance; + } + }, + beforeCreate() { + (this as any).$_WidgetClass = Pager; + (this as any).$_hasAsyncTemplate = true; + } +}); + +export default DxPager; +export { + DxPager +}; +import type * as DxPagerTypes from "devextreme/ui/pager_types"; +export { DxPagerTypes }; diff --git a/packages/devextreme-vue/src/tree-list.ts b/packages/devextreme-vue/src/tree-list.ts index 7484cbc62651..85911ad320f5 100644 --- a/packages/devextreme-vue/src/tree-list.ts +++ b/packages/devextreme-vue/src/tree-list.ts @@ -1846,24 +1846,56 @@ const DxPager = createConfigurationComponent({ emits: { "update:isActive": null, "update:hoveredElement": null, + "update:accessKey": null, + "update:activeStateEnabled": null, "update:allowedPageSizes": null, + "update:bindingOptions": null, + "update:disabled": null, "update:displayMode": null, + "update:elementAttr": null, + "update:focusStateEnabled": null, + "update:height": null, + "update:hint": null, + "update:hoverStateEnabled": null, "update:infoText": null, "update:label": null, + "update:onContentReady": null, + "update:onDisposing": null, + "update:onInitialized": null, + "update:onOptionChanged": null, + "update:rtlEnabled": null, "update:showInfo": null, "update:showNavigationButtons": null, "update:showPageSizeSelector": null, + "update:tabIndex": null, "update:visible": null, + "update:width": null, }, props: { + accessKey: String, + activeStateEnabled: Boolean, allowedPageSizes: [Array, String], + bindingOptions: Object, + disabled: Boolean, displayMode: String, + elementAttr: Object, + focusStateEnabled: Boolean, + height: [Function, Number, String], + hint: String, + hoverStateEnabled: Boolean, infoText: String, label: String, + onContentReady: Function, + onDisposing: Function, + onInitialized: Function, + onOptionChanged: Function, + rtlEnabled: Boolean, showInfo: Boolean, showNavigationButtons: Boolean, showPageSizeSelector: Boolean, - visible: [Boolean, String] + tabIndex: Number, + visible: [Boolean, String], + width: [Function, Number, String] } }); (DxPager as any).$_optionName = "pager"; From 255adbb1f00a1edd3744401c0b9a92025f0f0702 Mon Sep 17 00:00:00 2001 From: Andrey Dolzhikov Date: Thu, 19 Sep 2024 19:52:31 +0300 Subject: [PATCH 09/38] Move BasePagerOptions, PagerDisplayMode and PagerPageSize to common.d.ts --- .../devextreme-angular/src/common/index.ts | 3 + .../src/ui/data-grid/nested/pager.ts | 123 +----------- .../src/ui/nested/base/pager.ts | 108 +---------- .../devextreme-angular/src/ui/nested/pager.ts | 17 +- .../devextreme-angular/src/ui/pager/index.ts | 182 +++--------------- .../src/ui/tree-list/nested/pager.ts | 123 +----------- packages/devextreme-react/src/common/index.ts | 3 + packages/devextreme-react/src/data-grid.ts | 16 -- packages/devextreme-react/src/pager.ts | 15 +- packages/devextreme-react/src/tree-list.ts | 16 -- packages/devextreme-vue/src/common/index.ts | 3 + packages/devextreme-vue/src/data-grid.ts | 34 +--- packages/devextreme-vue/src/pager.ts | 30 +-- packages/devextreme-vue/src/tree-list.ts | 34 +--- packages/devextreme/js/common.d.ts | 55 ++++++ packages/devextreme/js/common/grids.d.ts | 9 +- .../devextreme/js/ui/data_grid_types.d.ts | 2 - packages/devextreme/js/ui/pager.d.ts | 99 +++------- packages/devextreme/js/ui/pager_types.d.ts | 7 +- .../devextreme/js/ui/tree_list_types.d.ts | 2 - packages/devextreme/ts/dx.all.d.ts | 48 +++-- 21 files changed, 178 insertions(+), 751 deletions(-) diff --git a/packages/devextreme-angular/src/common/index.ts b/packages/devextreme-angular/src/common/index.ts index 8bf03d75991c..049c34cb0ccf 100644 --- a/packages/devextreme-angular/src/common/index.ts +++ b/packages/devextreme-angular/src/common/index.ts @@ -1,6 +1,7 @@ export { ApplyValueMode, AsyncRule, + BasePagerOptions, ButtonStyle, ButtonType, CompareRule, @@ -28,6 +29,8 @@ export { Orientation, PageLoadMode, PageOrientation, + PagerDisplayMode, + PagerPageSize, PatternRule, Position, PositionAlignment, diff --git a/packages/devextreme-angular/src/ui/data-grid/nested/pager.ts b/packages/devextreme-angular/src/ui/data-grid/nested/pager.ts index 451f0c044390..601e683189ba 100644 --- a/packages/devextreme-angular/src/ui/data-grid/nested/pager.ts +++ b/packages/devextreme-angular/src/ui/data-grid/nested/pager.ts @@ -14,8 +14,7 @@ import { -import { Mode } from 'devextreme/common'; -import { PagerDisplayMode, PagerPageSize } from 'devextreme/ui/pager'; +import { Mode, PagerDisplayMode, PagerPageSize } from 'devextreme/common'; import { NestedOptionHost, @@ -30,22 +29,6 @@ import { NestedOption } from 'devextreme-angular/core'; providers: [NestedOptionHost] }) export class DxoDataGridPagerComponent extends NestedOption implements OnDestroy, OnInit { - @Input() - get accessKey(): string | undefined { - return this._getOption('accessKey'); - } - set accessKey(value: string | undefined) { - this._setOption('accessKey', value); - } - - @Input() - get activeStateEnabled(): boolean { - return this._getOption('activeStateEnabled'); - } - set activeStateEnabled(value: boolean) { - this._setOption('activeStateEnabled', value); - } - @Input() get allowedPageSizes(): Mode | Array { return this._getOption('allowedPageSizes'); @@ -54,14 +37,6 @@ export class DxoDataGridPagerComponent extends NestedOption implements OnDestroy this._setOption('allowedPageSizes', value); } - @Input() - get disabled(): boolean { - return this._getOption('disabled'); - } - set disabled(value: boolean) { - this._setOption('disabled', value); - } - @Input() get displayMode(): PagerDisplayMode { return this._getOption('displayMode'); @@ -70,46 +45,6 @@ export class DxoDataGridPagerComponent extends NestedOption implements OnDestroy this._setOption('displayMode', value); } - @Input() - get elementAttr(): any { - return this._getOption('elementAttr'); - } - set elementAttr(value: any) { - this._setOption('elementAttr', value); - } - - @Input() - get focusStateEnabled(): boolean { - return this._getOption('focusStateEnabled'); - } - set focusStateEnabled(value: boolean) { - this._setOption('focusStateEnabled', value); - } - - @Input() - get height(): number | Function | string | undefined { - return this._getOption('height'); - } - set height(value: number | Function | string | undefined) { - this._setOption('height', value); - } - - @Input() - get hint(): string | undefined { - return this._getOption('hint'); - } - set hint(value: string | undefined) { - this._setOption('hint', value); - } - - @Input() - get hoverStateEnabled(): boolean { - return this._getOption('hoverStateEnabled'); - } - set hoverStateEnabled(value: boolean) { - this._setOption('hoverStateEnabled', value); - } - @Input() get infoText(): string { return this._getOption('infoText'); @@ -126,46 +61,6 @@ export class DxoDataGridPagerComponent extends NestedOption implements OnDestroy this._setOption('label', value); } - @Input() - get onContentReady(): Function { - return this._getOption('onContentReady'); - } - set onContentReady(value: Function) { - this._setOption('onContentReady', value); - } - - @Input() - get onDisposing(): Function { - return this._getOption('onDisposing'); - } - set onDisposing(value: Function) { - this._setOption('onDisposing', value); - } - - @Input() - get onInitialized(): Function { - return this._getOption('onInitialized'); - } - set onInitialized(value: Function) { - this._setOption('onInitialized', value); - } - - @Input() - get onOptionChanged(): Function { - return this._getOption('onOptionChanged'); - } - set onOptionChanged(value: Function) { - this._setOption('onOptionChanged', value); - } - - @Input() - get rtlEnabled(): boolean { - return this._getOption('rtlEnabled'); - } - set rtlEnabled(value: boolean) { - this._setOption('rtlEnabled', value); - } - @Input() get showInfo(): boolean { return this._getOption('showInfo'); @@ -190,14 +85,6 @@ export class DxoDataGridPagerComponent extends NestedOption implements OnDestroy this._setOption('showPageSizeSelector', value); } - @Input() - get tabIndex(): number { - return this._getOption('tabIndex'); - } - set tabIndex(value: number) { - this._setOption('tabIndex', value); - } - @Input() get visible(): Mode | boolean { return this._getOption('visible'); @@ -206,14 +93,6 @@ export class DxoDataGridPagerComponent extends NestedOption implements OnDestroy this._setOption('visible', value); } - @Input() - get width(): number | Function | string | undefined { - return this._getOption('width'); - } - set width(value: number | Function | string | undefined) { - this._setOption('width', value); - } - protected get _optionPath() { return 'pager'; diff --git a/packages/devextreme-angular/src/ui/nested/base/pager.ts b/packages/devextreme-angular/src/ui/nested/base/pager.ts index 246ba8d84acf..f530d345e02e 100644 --- a/packages/devextreme-angular/src/ui/nested/base/pager.ts +++ b/packages/devextreme-angular/src/ui/nested/base/pager.ts @@ -5,27 +5,12 @@ import { Component, } from '@angular/core'; -import { Mode } from 'devextreme/common'; -import { PagerDisplayMode, PagerPageSize } from 'devextreme/ui/pager'; +import { Mode, PagerDisplayMode, PagerPageSize } from 'devextreme/common'; @Component({ template: '' }) export abstract class DxoPager extends NestedOption { - get accessKey(): string | undefined { - return this._getOption('accessKey'); - } - set accessKey(value: string | undefined) { - this._setOption('accessKey', value); - } - - get activeStateEnabled(): boolean { - return this._getOption('activeStateEnabled'); - } - set activeStateEnabled(value: boolean) { - this._setOption('activeStateEnabled', value); - } - get allowedPageSizes(): Mode | Array { return this._getOption('allowedPageSizes'); } @@ -33,13 +18,6 @@ export abstract class DxoPager extends NestedOption { this._setOption('allowedPageSizes', value); } - get disabled(): boolean { - return this._getOption('disabled'); - } - set disabled(value: boolean) { - this._setOption('disabled', value); - } - get displayMode(): PagerDisplayMode { return this._getOption('displayMode'); } @@ -47,41 +25,6 @@ export abstract class DxoPager extends NestedOption { this._setOption('displayMode', value); } - get elementAttr(): any { - return this._getOption('elementAttr'); - } - set elementAttr(value: any) { - this._setOption('elementAttr', value); - } - - get focusStateEnabled(): boolean { - return this._getOption('focusStateEnabled'); - } - set focusStateEnabled(value: boolean) { - this._setOption('focusStateEnabled', value); - } - - get height(): number | Function | string | undefined { - return this._getOption('height'); - } - set height(value: number | Function | string | undefined) { - this._setOption('height', value); - } - - get hint(): string | undefined { - return this._getOption('hint'); - } - set hint(value: string | undefined) { - this._setOption('hint', value); - } - - get hoverStateEnabled(): boolean { - return this._getOption('hoverStateEnabled'); - } - set hoverStateEnabled(value: boolean) { - this._setOption('hoverStateEnabled', value); - } - get infoText(): string { return this._getOption('infoText'); } @@ -96,41 +39,6 @@ export abstract class DxoPager extends NestedOption { this._setOption('label', value); } - get onContentReady(): Function { - return this._getOption('onContentReady'); - } - set onContentReady(value: Function) { - this._setOption('onContentReady', value); - } - - get onDisposing(): Function { - return this._getOption('onDisposing'); - } - set onDisposing(value: Function) { - this._setOption('onDisposing', value); - } - - get onInitialized(): Function { - return this._getOption('onInitialized'); - } - set onInitialized(value: Function) { - this._setOption('onInitialized', value); - } - - get onOptionChanged(): Function { - return this._getOption('onOptionChanged'); - } - set onOptionChanged(value: Function) { - this._setOption('onOptionChanged', value); - } - - get rtlEnabled(): boolean { - return this._getOption('rtlEnabled'); - } - set rtlEnabled(value: boolean) { - this._setOption('rtlEnabled', value); - } - get showInfo(): boolean { return this._getOption('showInfo'); } @@ -152,24 +60,10 @@ export abstract class DxoPager extends NestedOption { this._setOption('showPageSizeSelector', value); } - get tabIndex(): number { - return this._getOption('tabIndex'); - } - set tabIndex(value: number) { - this._setOption('tabIndex', value); - } - get visible(): Mode | boolean { return this._getOption('visible'); } set visible(value: Mode | boolean) { this._setOption('visible', value); } - - get width(): number | Function | string | undefined { - return this._getOption('width'); - } - set width(value: number | Function | string | undefined) { - this._setOption('width', value); - } } diff --git a/packages/devextreme-angular/src/ui/nested/pager.ts b/packages/devextreme-angular/src/ui/nested/pager.ts index a02dac1b22f6..e90a65cd7a0b 100644 --- a/packages/devextreme-angular/src/ui/nested/pager.ts +++ b/packages/devextreme-angular/src/ui/nested/pager.ts @@ -27,29 +27,14 @@ import { DxoPager } from './base/pager'; styles: [''], providers: [NestedOptionHost], inputs: [ - 'accessKey', - 'activeStateEnabled', 'allowedPageSizes', - 'disabled', 'displayMode', - 'elementAttr', - 'focusStateEnabled', - 'height', - 'hint', - 'hoverStateEnabled', 'infoText', 'label', - 'onContentReady', - 'onDisposing', - 'onInitialized', - 'onOptionChanged', - 'rtlEnabled', 'showInfo', 'showNavigationButtons', 'showPageSizeSelector', - 'tabIndex', - 'visible', - 'width' + 'visible' ] }) export class DxoPagerComponent extends DxoPager implements OnDestroy, OnInit { diff --git a/packages/devextreme-angular/src/ui/pager/index.ts b/packages/devextreme-angular/src/ui/pager/index.ts index d7b81c9db1ac..c2b8ecf8d2f3 100644 --- a/packages/devextreme-angular/src/ui/pager/index.ts +++ b/packages/devextreme-angular/src/ui/pager/index.ts @@ -13,15 +13,10 @@ import { Input, Output, OnDestroy, - EventEmitter, - OnChanges, - DoCheck, - SimpleChanges + EventEmitter } from '@angular/core'; -import { Mode } from 'devextreme/common'; -import { PagerDisplayMode, PagerPageSize } from 'devextreme/ui/pager'; import DxPager from 'devextreme/ui/pager'; @@ -32,7 +27,6 @@ import { DxIntegrationModule, DxTemplateModule, NestedOptionHost, - IterableDifferHelper, WatcherHelper } from 'devextreme-angular/core'; @@ -51,11 +45,10 @@ import { providers: [ DxTemplateHost, WatcherHelper, - NestedOptionHost, - IterableDifferHelper + NestedOptionHost ] }) -export class DxPagerComponent extends DxComponent implements OnDestroy, OnChanges, DoCheck { +export class DxPagerComponent extends DxComponent implements OnDestroy { instance: DxPager = null; /** @@ -84,19 +77,6 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange } - /** - * [descr:BasePagerOptions.allowedPageSizes] - - */ - @Input() - get allowedPageSizes(): Mode | Array { - return this._getOption('allowedPageSizes'); - } - set allowedPageSizes(value: Mode | Array) { - this._setOption('allowedPageSizes', value); - } - - /** * [descr:WidgetOptions.disabled] @@ -110,19 +90,6 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange } - /** - * [descr:BasePagerOptions.displayMode] - - */ - @Input() - get displayMode(): PagerDisplayMode { - return this._getOption('displayMode'); - } - set displayMode(value: PagerDisplayMode) { - this._setOption('displayMode', value); - } - - /** * [descr:DOMComponentOptions.elementAttr] @@ -189,80 +156,54 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange /** - * [descr:BasePagerOptions.infoText] + * [descr:dxPagerOptions.itemCount] */ @Input() - get infoText(): string { - return this._getOption('infoText'); + get itemCount(): number { + return this._getOption('itemCount'); } - set infoText(value: string) { - this._setOption('infoText', value); + set itemCount(value: number) { + this._setOption('itemCount', value); } /** - * [descr:BasePagerOptions.label] + * [descr:dxPagerOptions.pageIndex] */ @Input() - get label(): string { - return this._getOption('label'); + get pageIndex(): number { + return this._getOption('pageIndex'); } - set label(value: string) { - this._setOption('label', value); + set pageIndex(value: number) { + this._setOption('pageIndex', value); } /** - * [descr:DOMComponentOptions.rtlEnabled] + * [descr:dxPagerOptions.pageSize] */ @Input() - get rtlEnabled(): boolean { - return this._getOption('rtlEnabled'); + get pageSize(): number { + return this._getOption('pageSize'); } - set rtlEnabled(value: boolean) { - this._setOption('rtlEnabled', value); - } - - - /** - * [descr:BasePagerOptions.showInfo] - - */ - @Input() - get showInfo(): boolean { - return this._getOption('showInfo'); - } - set showInfo(value: boolean) { - this._setOption('showInfo', value); + set pageSize(value: number) { + this._setOption('pageSize', value); } /** - * [descr:BasePagerOptions.showNavigationButtons] - - */ - @Input() - get showNavigationButtons(): boolean { - return this._getOption('showNavigationButtons'); - } - set showNavigationButtons(value: boolean) { - this._setOption('showNavigationButtons', value); - } - - - /** - * [descr:BasePagerOptions.showPageSizeSelector] + * [descr:DOMComponentOptions.rtlEnabled] */ @Input() - get showPageSizeSelector(): boolean { - return this._getOption('showPageSizeSelector'); + get rtlEnabled(): boolean { + return this._getOption('rtlEnabled'); } - set showPageSizeSelector(value: boolean) { - this._setOption('showPageSizeSelector', value); + set rtlEnabled(value: boolean) { + this._setOption('rtlEnabled', value); } @@ -350,13 +291,6 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange */ @Output() activeStateEnabledChange: EventEmitter; - /** - - * This member supports the internal infrastructure and is not intended to be used directly from your code. - - */ - @Output() allowedPageSizesChange: EventEmitter>; - /** * This member supports the internal infrastructure and is not intended to be used directly from your code. @@ -364,13 +298,6 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange */ @Output() disabledChange: EventEmitter; - /** - - * This member supports the internal infrastructure and is not intended to be used directly from your code. - - */ - @Output() displayModeChange: EventEmitter; - /** * This member supports the internal infrastructure and is not intended to be used directly from your code. @@ -411,42 +338,28 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange * This member supports the internal infrastructure and is not intended to be used directly from your code. */ - @Output() infoTextChange: EventEmitter; - - /** - - * This member supports the internal infrastructure and is not intended to be used directly from your code. - - */ - @Output() labelChange: EventEmitter; - - /** - - * This member supports the internal infrastructure and is not intended to be used directly from your code. - - */ - @Output() rtlEnabledChange: EventEmitter; + @Output() itemCountChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ - @Output() showInfoChange: EventEmitter; + @Output() pageIndexChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ - @Output() showNavigationButtonsChange: EventEmitter; + @Output() pageSizeChange: EventEmitter; /** * This member supports the internal infrastructure and is not intended to be used directly from your code. */ - @Output() showPageSizeSelectorChange: EventEmitter; + @Output() rtlEnabledChange: EventEmitter; /** @@ -477,8 +390,7 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange constructor(elementRef: ElementRef, ngZone: NgZone, templateHost: DxTemplateHost, - private _watcherHelper: WatcherHelper, - private _idh: IterableDifferHelper, + _watcherHelper: WatcherHelper, optionHost: NestedOptionHost, transferState: TransferState, @Inject(PLATFORM_ID) platformId: any) { @@ -492,26 +404,20 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange { subscribe: 'optionChanged', emit: 'onOptionChanged' }, { emit: 'accessKeyChange' }, { emit: 'activeStateEnabledChange' }, - { emit: 'allowedPageSizesChange' }, { emit: 'disabledChange' }, - { emit: 'displayModeChange' }, { emit: 'elementAttrChange' }, { emit: 'focusStateEnabledChange' }, { emit: 'heightChange' }, { emit: 'hintChange' }, { emit: 'hoverStateEnabledChange' }, - { emit: 'infoTextChange' }, - { emit: 'labelChange' }, + { emit: 'itemCountChange' }, + { emit: 'pageIndexChange' }, + { emit: 'pageSizeChange' }, { emit: 'rtlEnabledChange' }, - { emit: 'showInfoChange' }, - { emit: 'showNavigationButtonsChange' }, - { emit: 'showPageSizeSelectorChange' }, { emit: 'tabIndexChange' }, { emit: 'visibleChange' }, { emit: 'widthChange' } ]); - - this._idh.setHost(this); optionHost.setHost(this); } @@ -525,32 +431,6 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange this._destroyWidget(); } - ngOnChanges(changes: SimpleChanges) { - super.ngOnChanges(changes); - this.setupChanges('allowedPageSizes', changes); - } - - setupChanges(prop: string, changes: SimpleChanges) { - if (!(prop in this._optionsToUpdate)) { - this._idh.setup(prop, changes); - } - } - - ngDoCheck() { - this._idh.doCheck('allowedPageSizes'); - this._watcherHelper.checkWatchers(); - super.ngDoCheck(); - super.clearChangedOptions(); - } - - _setOption(name: string, value: any) { - let isSetup = this._idh.setupSingle(name, value); - let isChanged = this._idh.getChanges(name, value) !== null; - - if (isSetup || isChanged) { - super._setOption(name, value); - } - } } @NgModule({ diff --git a/packages/devextreme-angular/src/ui/tree-list/nested/pager.ts b/packages/devextreme-angular/src/ui/tree-list/nested/pager.ts index fc1f99732680..b8a214bfba5d 100644 --- a/packages/devextreme-angular/src/ui/tree-list/nested/pager.ts +++ b/packages/devextreme-angular/src/ui/tree-list/nested/pager.ts @@ -14,8 +14,7 @@ import { -import { Mode } from 'devextreme/common'; -import { PagerDisplayMode, PagerPageSize } from 'devextreme/ui/pager'; +import { Mode, PagerDisplayMode, PagerPageSize } from 'devextreme/common'; import { NestedOptionHost, @@ -30,22 +29,6 @@ import { NestedOption } from 'devextreme-angular/core'; providers: [NestedOptionHost] }) export class DxoTreeListPagerComponent extends NestedOption implements OnDestroy, OnInit { - @Input() - get accessKey(): string | undefined { - return this._getOption('accessKey'); - } - set accessKey(value: string | undefined) { - this._setOption('accessKey', value); - } - - @Input() - get activeStateEnabled(): boolean { - return this._getOption('activeStateEnabled'); - } - set activeStateEnabled(value: boolean) { - this._setOption('activeStateEnabled', value); - } - @Input() get allowedPageSizes(): Mode | Array { return this._getOption('allowedPageSizes'); @@ -54,14 +37,6 @@ export class DxoTreeListPagerComponent extends NestedOption implements OnDestroy this._setOption('allowedPageSizes', value); } - @Input() - get disabled(): boolean { - return this._getOption('disabled'); - } - set disabled(value: boolean) { - this._setOption('disabled', value); - } - @Input() get displayMode(): PagerDisplayMode { return this._getOption('displayMode'); @@ -70,46 +45,6 @@ export class DxoTreeListPagerComponent extends NestedOption implements OnDestroy this._setOption('displayMode', value); } - @Input() - get elementAttr(): any { - return this._getOption('elementAttr'); - } - set elementAttr(value: any) { - this._setOption('elementAttr', value); - } - - @Input() - get focusStateEnabled(): boolean { - return this._getOption('focusStateEnabled'); - } - set focusStateEnabled(value: boolean) { - this._setOption('focusStateEnabled', value); - } - - @Input() - get height(): number | Function | string | undefined { - return this._getOption('height'); - } - set height(value: number | Function | string | undefined) { - this._setOption('height', value); - } - - @Input() - get hint(): string | undefined { - return this._getOption('hint'); - } - set hint(value: string | undefined) { - this._setOption('hint', value); - } - - @Input() - get hoverStateEnabled(): boolean { - return this._getOption('hoverStateEnabled'); - } - set hoverStateEnabled(value: boolean) { - this._setOption('hoverStateEnabled', value); - } - @Input() get infoText(): string { return this._getOption('infoText'); @@ -126,46 +61,6 @@ export class DxoTreeListPagerComponent extends NestedOption implements OnDestroy this._setOption('label', value); } - @Input() - get onContentReady(): Function { - return this._getOption('onContentReady'); - } - set onContentReady(value: Function) { - this._setOption('onContentReady', value); - } - - @Input() - get onDisposing(): Function { - return this._getOption('onDisposing'); - } - set onDisposing(value: Function) { - this._setOption('onDisposing', value); - } - - @Input() - get onInitialized(): Function { - return this._getOption('onInitialized'); - } - set onInitialized(value: Function) { - this._setOption('onInitialized', value); - } - - @Input() - get onOptionChanged(): Function { - return this._getOption('onOptionChanged'); - } - set onOptionChanged(value: Function) { - this._setOption('onOptionChanged', value); - } - - @Input() - get rtlEnabled(): boolean { - return this._getOption('rtlEnabled'); - } - set rtlEnabled(value: boolean) { - this._setOption('rtlEnabled', value); - } - @Input() get showInfo(): boolean { return this._getOption('showInfo'); @@ -190,14 +85,6 @@ export class DxoTreeListPagerComponent extends NestedOption implements OnDestroy this._setOption('showPageSizeSelector', value); } - @Input() - get tabIndex(): number { - return this._getOption('tabIndex'); - } - set tabIndex(value: number) { - this._setOption('tabIndex', value); - } - @Input() get visible(): Mode | boolean { return this._getOption('visible'); @@ -206,14 +93,6 @@ export class DxoTreeListPagerComponent extends NestedOption implements OnDestroy this._setOption('visible', value); } - @Input() - get width(): number | Function | string | undefined { - return this._getOption('width'); - } - set width(value: number | Function | string | undefined) { - this._setOption('width', value); - } - protected get _optionPath() { return 'pager'; diff --git a/packages/devextreme-react/src/common/index.ts b/packages/devextreme-react/src/common/index.ts index 83397af54a21..876c3976a869 100644 --- a/packages/devextreme-react/src/common/index.ts +++ b/packages/devextreme-react/src/common/index.ts @@ -1,6 +1,7 @@ export { ApplyValueMode, AsyncRule, + BasePagerOptions, ButtonStyle, ButtonType, CompareRule, @@ -28,6 +29,8 @@ export { Orientation, PageLoadMode, PageOrientation, + PagerDisplayMode, + PagerPageSize, PatternRule, Position, PositionAlignment, diff --git a/packages/devextreme-react/src/data-grid.ts b/packages/devextreme-react/src/data-grid.ts index 3131956535b3..5a7a242e658d 100644 --- a/packages/devextreme-react/src/data-grid.ts +++ b/packages/devextreme-react/src/data-grid.ts @@ -1953,30 +1953,14 @@ const OperationDescriptions: typeof _componentOperationDescriptions & IElementDe // owners: // DataGrid type IPagerProps = React.PropsWithChildren<{ - accessKey?: string; - activeStateEnabled?: boolean; allowedPageSizes?: Array | "auto"; - bindingOptions?: Record; - disabled?: boolean; displayMode?: "adaptive" | "compact" | "full"; - elementAttr?: Record; - focusStateEnabled?: boolean; - height?: (() => number | string) | number | string; - hint?: string; - hoverStateEnabled?: boolean; infoText?: string; label?: string; - onContentReady?: ((e: EventInfo) => void); - onDisposing?: ((e: EventInfo) => void); - onInitialized?: ((e: { component: Component, element: any }) => void); - onOptionChanged?: ((e: { component: DOMComponent, element: any, fullName: string, model: any, name: string, previousValue: any, value: any }) => void); - rtlEnabled?: boolean; showInfo?: boolean; showNavigationButtons?: boolean; showPageSizeSelector?: boolean; - tabIndex?: number; visible?: boolean | "auto"; - width?: (() => number | string) | number | string; }> const _componentPager = memo( (props: IPagerProps) => { diff --git a/packages/devextreme-react/src/pager.ts b/packages/devextreme-react/src/pager.ts index 780133a0b3f9..afb0ecb1e114 100644 --- a/packages/devextreme-react/src/pager.ts +++ b/packages/devextreme-react/src/pager.ts @@ -7,7 +7,12 @@ import dxPager, { import { Component as BaseComponent, IHtmlOptions, ComponentRef } from "./core/component"; -type IPagerOptions = React.PropsWithChildren +type IPagerOptions = React.PropsWithChildren void; + onPageSizeChange?: (value: number) => void; +}> interface PagerRef { instance: () => dxPager; @@ -26,13 +31,21 @@ const Pager = memo( } ), [baseRef.current]); + const subscribableOptions = useMemo(() => (["pageIndex","pageSize"]), []); const independentEvents = useMemo(() => (["onContentReady","onDisposing","onInitialized"]), []); + const defaults = useMemo(() => ({ + defaultPageIndex: "pageIndex", + defaultPageSize: "pageSize", + }), []); + return ( React.createElement(BaseComponent>, { WidgetClass: dxPager, ref: baseRef, + subscribableOptions, independentEvents, + defaults, ...props, }) ); diff --git a/packages/devextreme-react/src/tree-list.ts b/packages/devextreme-react/src/tree-list.ts index fabb383261b6..801eea1f7bcc 100644 --- a/packages/devextreme-react/src/tree-list.ts +++ b/packages/devextreme-react/src/tree-list.ts @@ -1658,30 +1658,14 @@ const OperationDescriptions: typeof _componentOperationDescriptions & IElementDe // owners: // TreeList type IPagerProps = React.PropsWithChildren<{ - accessKey?: string; - activeStateEnabled?: boolean; allowedPageSizes?: Array | "auto"; - bindingOptions?: Record; - disabled?: boolean; displayMode?: "adaptive" | "compact" | "full"; - elementAttr?: Record; - focusStateEnabled?: boolean; - height?: (() => number | string) | number | string; - hint?: string; - hoverStateEnabled?: boolean; infoText?: string; label?: string; - onContentReady?: ((e: EventInfo) => void); - onDisposing?: ((e: EventInfo) => void); - onInitialized?: ((e: { component: Component, element: any }) => void); - onOptionChanged?: ((e: { component: DOMComponent, element: any, fullName: string, model: any, name: string, previousValue: any, value: any }) => void); - rtlEnabled?: boolean; showInfo?: boolean; showNavigationButtons?: boolean; showPageSizeSelector?: boolean; - tabIndex?: number; visible?: boolean | "auto"; - width?: (() => number | string) | number | string; }> const _componentPager = memo( (props: IPagerProps) => { diff --git a/packages/devextreme-vue/src/common/index.ts b/packages/devextreme-vue/src/common/index.ts index 83397af54a21..876c3976a869 100644 --- a/packages/devextreme-vue/src/common/index.ts +++ b/packages/devextreme-vue/src/common/index.ts @@ -1,6 +1,7 @@ export { ApplyValueMode, AsyncRule, + BasePagerOptions, ButtonStyle, ButtonType, CompareRule, @@ -28,6 +29,8 @@ export { Orientation, PageLoadMode, PageOrientation, + PagerDisplayMode, + PagerPageSize, PatternRule, Position, PositionAlignment, diff --git a/packages/devextreme-vue/src/data-grid.ts b/packages/devextreme-vue/src/data-grid.ts index 0348b51279cb..752aee36edf5 100644 --- a/packages/devextreme-vue/src/data-grid.ts +++ b/packages/devextreme-vue/src/data-grid.ts @@ -2091,56 +2091,24 @@ const DxPager = createConfigurationComponent({ emits: { "update:isActive": null, "update:hoveredElement": null, - "update:accessKey": null, - "update:activeStateEnabled": null, "update:allowedPageSizes": null, - "update:bindingOptions": null, - "update:disabled": null, "update:displayMode": null, - "update:elementAttr": null, - "update:focusStateEnabled": null, - "update:height": null, - "update:hint": null, - "update:hoverStateEnabled": null, "update:infoText": null, "update:label": null, - "update:onContentReady": null, - "update:onDisposing": null, - "update:onInitialized": null, - "update:onOptionChanged": null, - "update:rtlEnabled": null, "update:showInfo": null, "update:showNavigationButtons": null, "update:showPageSizeSelector": null, - "update:tabIndex": null, "update:visible": null, - "update:width": null, }, props: { - accessKey: String, - activeStateEnabled: Boolean, allowedPageSizes: [Array, String], - bindingOptions: Object, - disabled: Boolean, displayMode: String, - elementAttr: Object, - focusStateEnabled: Boolean, - height: [Function, Number, String], - hint: String, - hoverStateEnabled: Boolean, infoText: String, label: String, - onContentReady: Function, - onDisposing: Function, - onInitialized: Function, - onOptionChanged: Function, - rtlEnabled: Boolean, showInfo: Boolean, showNavigationButtons: Boolean, showPageSizeSelector: Boolean, - tabIndex: Number, - visible: [Boolean, String], - width: [Function, Number, String] + visible: [Boolean, String] } }); (DxPager as any).$_optionName = "pager"; diff --git a/packages/devextreme-vue/src/pager.ts b/packages/devextreme-vue/src/pager.ts index 0021b57a43eb..5234e0c910f4 100644 --- a/packages/devextreme-vue/src/pager.ts +++ b/packages/devextreme-vue/src/pager.ts @@ -4,24 +4,20 @@ import { createComponent } from "./core/index"; type AccessibleOptions = Pick | Mode; + /** + * @docid + * @default "adaptive" + */ + displayMode?: PagerDisplayMode; + /** + * @docid + * @default "Page {0} of {1} ({2} items)" + */ + infoText?: string; + /** + * @docid + * @default false + */ + showInfo?: boolean; + /** + * @docid + * @default false + */ + showNavigationButtons?: boolean; + /** + * @docid + * @default false + */ + showPageSizeSelector?: boolean; + /** + * @docid + * @default "Page Navigation" + */ + label?: string; +}; diff --git a/packages/devextreme/js/common/grids.d.ts b/packages/devextreme/js/common/grids.d.ts index cd8749ca4b23..7a5fe012ea13 100644 --- a/packages/devextreme/js/common/grids.d.ts +++ b/packages/devextreme/js/common/grids.d.ts @@ -12,6 +12,9 @@ import { Sortable, SortOrder, ValidationRule, + PagerDisplayMode as PagerDisplayModeType, + PagerPageSize as PagerPageSizeType, + BasePagerOptions, } from '../common'; import { @@ -70,12 +73,6 @@ import { } from '../ui/widget/ui.widget'; import { PositionConfig } from '../animation/position'; -import { - BasePagerOptions, - PagerDisplayMode as PagerDisplayModeType, - PagerPageSize as PagerPageSizeType, -} from '../ui/pager'; - /** * @docid * @public diff --git a/packages/devextreme/js/ui/data_grid_types.d.ts b/packages/devextreme/js/ui/data_grid_types.d.ts index 145963a441ab..c5fa9553187a 100644 --- a/packages/devextreme/js/ui/data_grid_types.d.ts +++ b/packages/devextreme/js/ui/data_grid_types.d.ts @@ -55,8 +55,6 @@ export { StateStoreType, StateStoring, SummaryType, - PagerDisplayMode, - PagerPageSize, DataGridCommandColumnType, DataGridExportFormat, DataGridScrollMode, diff --git a/packages/devextreme/js/ui/pager.d.ts b/packages/devextreme/js/ui/pager.d.ts index bb1759dd1514..074479171aaf 100644 --- a/packages/devextreme/js/ui/pager.d.ts +++ b/packages/devextreme/js/ui/pager.d.ts @@ -1,69 +1,38 @@ -import { - Mode, - } from '../common'; import Widget, { WidgetOptions } from './widget/ui.widget'; /** + * @deprecated use Properties instead + * @namespace DevExpress.ui * @public - * @namespace DevExpress.ui.dxPager + * @docid */ -export type PagerDisplayMode = 'adaptive' | 'compact' | 'full'; +export interface dxPagerOptions extends BasePagerOptions, WidgetOptions { + /** + * @docid + * @fires Properties.onOptionChanged + * @default 1 + */ + pageIndex?: number; -/** - * @public - * @namespace DevExpress.ui.dxPager - */ -export type PagerPageSize = 'all' | 'auto'; + /** + * @docid + * @fires Properties.onOptionChanged + * @default 10 + */ + pageSize?: number; -/** - * @docid - * @public - * @namespace DevExpress.ui - */ -export type BasePagerOptions = { - /** - * @docid - * @default "auto" - */ - allowedPageSizes?: Array<(number | PagerPageSize)> | Mode; - /** - * @docid - * @default "adaptive" - */ - displayMode?: PagerDisplayMode; - /** - * @docid - * @default "Page {0} of {1} ({2} items)" - */ - infoText?: string; - /** - * @docid - * @default false - */ - showInfo?: boolean; - /** - * @docid - * @default false - */ - showNavigationButtons?: boolean; - /** - * @docid - * @default false - */ - showPageSizeSelector?: boolean; - /** - * @docid - * @default "Page Navigation" - */ - label?: string; - }; + /** + * @docid + * @default 0 + */ + itemCount?: number; +} /** * @docid * @namespace DevExpress.ui * @public * @inherits Widget - * @options BasePagerOptions */ export default class dxPager extends Widget { /** @@ -75,28 +44,6 @@ export default class dxPager extends Widget { } /** - * @docid - * @namespace DevExpress.ui * @public */ -export interface Properties extends BasePagerOptions, WidgetOptions { - /** - * @docid - * @fires Properties.onOptionChanged - * @default 1 - */ - pageIndex?: number; - - /** - * @docid - * @fires Properties.onOptionChanged - * @default 10 - */ - pageSize?: number; - - /** - * @docid - * @default 0 - */ - itemCount?: number; -} +export type Properties = dxPagerOptions; diff --git a/packages/devextreme/js/ui/pager_types.d.ts b/packages/devextreme/js/ui/pager_types.d.ts index 25c03d395103..7176533b9dc9 100644 --- a/packages/devextreme/js/ui/pager_types.d.ts +++ b/packages/devextreme/js/ui/pager_types.d.ts @@ -1,6 +1 @@ -export { - PagerDisplayMode, - PagerPageSize, - BasePagerOptions, - Properties, -} from './pager'; +export { dxPagerOptions, Properties } from './pager'; diff --git a/packages/devextreme/js/ui/tree_list_types.d.ts b/packages/devextreme/js/ui/tree_list_types.d.ts index fc1c04d24a27..9bc44b9a9626 100644 --- a/packages/devextreme/js/ui/tree_list_types.d.ts +++ b/packages/devextreme/js/ui/tree_list_types.d.ts @@ -43,8 +43,6 @@ export { StateStoreType, StateStoring, SummaryType, - PagerDisplayMode, - PagerPageSize, DataStructure, Mode, ScrollMode, diff --git a/packages/devextreme/ts/dx.all.d.ts b/packages/devextreme/ts/dx.all.d.ts index 3fd0ce5a0363..9eab9bfa6030 100644 --- a/packages/devextreme/ts/dx.all.d.ts +++ b/packages/devextreme/ts/dx.all.d.ts @@ -253,7 +253,7 @@ declare global { dxPager(): JQuery; dxPager(options: 'instance'): DevExpress.ui.dxPager; - dxPager(options: DevExpress.ui.Properties): JQuery; + dxPager(options: DevExpress.ui.dxPager.Properties): JQuery; dxPager(options: string): any; dxPager(options: string, ...params: any[]): any; @@ -21734,12 +21734,37 @@ declare module DevExpress.ui { /** * [descr:dxPager] */ - export class dxPager extends Widget { + export class dxPager extends Widget { /** * [descr:dxPager.getPageCount()] */ getPageCount(): number; } + module dxPager { + export type Properties = dxPagerOptions; + } + /** + * [descr:dxPagerOptions] + * @deprecated [depNote:dxPagerOptions] + */ + export interface dxPagerOptions + extends BasePagerOptions, + WidgetOptions { + /** + * [descr:dxPagerOptions.pageIndex] + */ + pageIndex?: number; + + /** + * [descr:dxPagerOptions.pageSize] + */ + pageSize?: number; + + /** + * [descr:dxPagerOptions.itemCount] + */ + itemCount?: number; + } /** * [descr:dxPivotGrid] */ @@ -30440,25 +30465,6 @@ declare module DevExpress.ui { * [descr:ui.notify(options,stack)] */ export function notify(options: any, stack?: Stack): void; - /** - * [descr:Properties] - */ - export interface Properties extends BasePagerOptions, WidgetOptions { - /** - * [descr:Properties.pageIndex] - */ - pageIndex?: number; - - /** - * [descr:Properties.pageSize] - */ - pageSize?: number; - - /** - * [descr:Properties.itemCount] - */ - itemCount?: number; - } /** * [descr:ui.repaintFloatingActionButton()] */ From d76c369b67fee4e17cff0804f12d1d6c0836c520 Mon Sep 17 00:00:00 2001 From: Andrey Dolzhikov Date: Thu, 19 Sep 2024 20:27:16 +0300 Subject: [PATCH 10/38] fix build --- .../devextreme/js/__internal/pager/common/base_pager_props.ts | 2 +- packages/devextreme/js/__internal/pager/content.tsx | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/packages/devextreme/js/__internal/pager/common/base_pager_props.ts b/packages/devextreme/js/__internal/pager/common/base_pager_props.ts index 748c4383ec39..d932bde7c533 100644 --- a/packages/devextreme/js/__internal/pager/common/base_pager_props.ts +++ b/packages/devextreme/js/__internal/pager/common/base_pager_props.ts @@ -1,4 +1,4 @@ -import type { PagerDisplayMode } from '@js/ui/pager'; +import type { PagerDisplayMode } from '@js/common'; import messageLocalization from '../../../localization/message'; import type { EventCallback } from '../../core/r1/event_callback'; diff --git a/packages/devextreme/js/__internal/pager/content.tsx b/packages/devextreme/js/__internal/pager/content.tsx index 729771de9375..63c6fcabac4f 100644 --- a/packages/devextreme/js/__internal/pager/content.tsx +++ b/packages/devextreme/js/__internal/pager/content.tsx @@ -2,7 +2,7 @@ /* eslint-disable @typescript-eslint/explicit-module-boundary-types */ import { InfernoComponent, InfernoEffect } from '@devextreme/runtime/inferno'; import type { RefObject } from '@devextreme-generator/declarations'; -import type { PagerDisplayMode } from '@js/ui/pager'; +import type { PagerDisplayMode } from '@js/common'; import { createRef as infernoCreateRef } from 'inferno'; import { registerKeyboardAction } from '../../ui/shared/accessibility'; From dfe900f57e3b67bfeb892b59edf55f619566b186 Mon Sep 17 00:00:00 2001 From: Andrey Dolzhikov Date: Thu, 19 Sep 2024 20:49:48 +0300 Subject: [PATCH 11/38] fix build --- packages/devextreme/js/ui/data_grid.d.ts | 5 ----- packages/devextreme/js/ui/pager.d.ts | 3 +++ packages/devextreme/js/ui/tree_list.d.ts | 5 ----- 3 files changed, 3 insertions(+), 10 deletions(-) diff --git a/packages/devextreme/js/ui/data_grid.d.ts b/packages/devextreme/js/ui/data_grid.d.ts index a6d6df3c69e4..b8a13cf38af9 100644 --- a/packages/devextreme/js/ui/data_grid.d.ts +++ b/packages/devextreme/js/ui/data_grid.d.ts @@ -146,11 +146,6 @@ export { SummaryType, } from '../common/grids'; -export { - PagerDisplayMode, - PagerPageSize, -} from './pager'; - export { AdaptiveDetailRowPreparingInfo, DataChangeInfo, diff --git a/packages/devextreme/js/ui/pager.d.ts b/packages/devextreme/js/ui/pager.d.ts index 074479171aaf..2efd93ea6794 100644 --- a/packages/devextreme/js/ui/pager.d.ts +++ b/packages/devextreme/js/ui/pager.d.ts @@ -1,4 +1,7 @@ import Widget, { WidgetOptions } from './widget/ui.widget'; +import { + BasePagerOptions, +} from '../common'; /** * @deprecated use Properties instead diff --git a/packages/devextreme/js/ui/tree_list.d.ts b/packages/devextreme/js/ui/tree_list.d.ts index c46133bb0faf..77ee713d1959 100644 --- a/packages/devextreme/js/ui/tree_list.d.ts +++ b/packages/devextreme/js/ui/tree_list.d.ts @@ -158,11 +158,6 @@ export { SummaryType, } from '../common/grids'; -export { - PagerDisplayMode, - PagerPageSize, - } from './pager'; - export { DataStructure, Mode, From f24c1a31282582967b3a917be8e67ad23a97d641 Mon Sep 17 00:00:00 2001 From: Andrey Dolzhikov Date: Fri, 20 Sep 2024 14:03:15 +0300 Subject: [PATCH 12/38] Set type to allowedPageSizes --- .../devextreme-angular/src/common/index.ts | 1 + .../src/ui/data-grid/nested/pager.ts | 10 +-- .../src/ui/nested/base/pager.ts | 9 +-- .../devextreme-angular/src/ui/nested/pager.ts | 1 - .../devextreme-angular/src/ui/pager/index.ts | 64 +++++++++++++++++-- .../src/ui/tree-list/nested/pager.ts | 10 +-- packages/devextreme-react/src/common/index.ts | 1 + packages/devextreme-react/src/data-grid.ts | 1 - packages/devextreme-react/src/tree-list.ts | 1 - packages/devextreme-vue/src/common/index.ts | 1 + packages/devextreme-vue/src/data-grid.ts | 2 - packages/devextreme-vue/src/pager.ts | 3 + packages/devextreme-vue/src/tree-list.ts | 2 - .../pager/common/base_pager_props.ts | 4 +- .../__internal/pager/wrappers/grid_pager.ts | 8 +-- packages/devextreme/js/common.d.ts | 13 ++-- packages/devextreme/js/ui/pager.d.ts | 41 +++++++----- packages/devextreme/ts/dx.all.d.ts | 14 ++-- 18 files changed, 110 insertions(+), 76 deletions(-) diff --git a/packages/devextreme-angular/src/common/index.ts b/packages/devextreme-angular/src/common/index.ts index 049c34cb0ccf..906e4fc22e3c 100644 --- a/packages/devextreme-angular/src/common/index.ts +++ b/packages/devextreme-angular/src/common/index.ts @@ -29,6 +29,7 @@ export { Orientation, PageLoadMode, PageOrientation, + PagerAllPagesMode, PagerDisplayMode, PagerPageSize, PatternRule, diff --git a/packages/devextreme-angular/src/ui/data-grid/nested/pager.ts b/packages/devextreme-angular/src/ui/data-grid/nested/pager.ts index 601e683189ba..87265a435b0c 100644 --- a/packages/devextreme-angular/src/ui/data-grid/nested/pager.ts +++ b/packages/devextreme-angular/src/ui/data-grid/nested/pager.ts @@ -14,7 +14,7 @@ import { -import { Mode, PagerDisplayMode, PagerPageSize } from 'devextreme/common'; +import { Mode, PagerDisplayMode } from 'devextreme/common'; import { NestedOptionHost, @@ -29,14 +29,6 @@ import { NestedOption } from 'devextreme-angular/core'; providers: [NestedOptionHost] }) export class DxoDataGridPagerComponent extends NestedOption implements OnDestroy, OnInit { - @Input() - get allowedPageSizes(): Mode | Array { - return this._getOption('allowedPageSizes'); - } - set allowedPageSizes(value: Mode | Array) { - this._setOption('allowedPageSizes', value); - } - @Input() get displayMode(): PagerDisplayMode { return this._getOption('displayMode'); diff --git a/packages/devextreme-angular/src/ui/nested/base/pager.ts b/packages/devextreme-angular/src/ui/nested/base/pager.ts index f530d345e02e..a31a65e02c76 100644 --- a/packages/devextreme-angular/src/ui/nested/base/pager.ts +++ b/packages/devextreme-angular/src/ui/nested/base/pager.ts @@ -5,19 +5,12 @@ import { Component, } from '@angular/core'; -import { Mode, PagerDisplayMode, PagerPageSize } from 'devextreme/common'; +import { Mode, PagerDisplayMode } from 'devextreme/common'; @Component({ template: '' }) export abstract class DxoPager extends NestedOption { - get allowedPageSizes(): Mode | Array { - return this._getOption('allowedPageSizes'); - } - set allowedPageSizes(value: Mode | Array) { - this._setOption('allowedPageSizes', value); - } - get displayMode(): PagerDisplayMode { return this._getOption('displayMode'); } diff --git a/packages/devextreme-angular/src/ui/nested/pager.ts b/packages/devextreme-angular/src/ui/nested/pager.ts index e90a65cd7a0b..453ba9080bcb 100644 --- a/packages/devextreme-angular/src/ui/nested/pager.ts +++ b/packages/devextreme-angular/src/ui/nested/pager.ts @@ -27,7 +27,6 @@ import { DxoPager } from './base/pager'; styles: [''], providers: [NestedOptionHost], inputs: [ - 'allowedPageSizes', 'displayMode', 'infoText', 'label', diff --git a/packages/devextreme-angular/src/ui/pager/index.ts b/packages/devextreme-angular/src/ui/pager/index.ts index c2b8ecf8d2f3..98be3c235aaf 100644 --- a/packages/devextreme-angular/src/ui/pager/index.ts +++ b/packages/devextreme-angular/src/ui/pager/index.ts @@ -13,10 +13,14 @@ import { Input, Output, OnDestroy, - EventEmitter + EventEmitter, + OnChanges, + DoCheck, + SimpleChanges } from '@angular/core'; +import { PagerAllPagesMode } from 'devextreme/common'; import DxPager from 'devextreme/ui/pager'; @@ -27,6 +31,7 @@ import { DxIntegrationModule, DxTemplateModule, NestedOptionHost, + IterableDifferHelper, WatcherHelper } from 'devextreme-angular/core'; @@ -45,10 +50,11 @@ import { providers: [ DxTemplateHost, WatcherHelper, - NestedOptionHost + NestedOptionHost, + IterableDifferHelper ] }) -export class DxPagerComponent extends DxComponent implements OnDestroy { +export class DxPagerComponent extends DxComponent implements OnDestroy, OnChanges, DoCheck { instance: DxPager = null; /** @@ -77,6 +83,19 @@ export class DxPagerComponent extends DxComponent implements OnDestroy { } + /** + * [descr:dxPagerOptions.allowedPageSizes] + + */ + @Input() + get allowedPageSizes(): Array { + return this._getOption('allowedPageSizes'); + } + set allowedPageSizes(value: Array) { + this._setOption('allowedPageSizes', value); + } + + /** * [descr:WidgetOptions.disabled] @@ -291,6 +310,13 @@ export class DxPagerComponent extends DxComponent implements OnDestroy { */ @Output() activeStateEnabledChange: EventEmitter; + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() allowedPageSizesChange: EventEmitter>; + /** * This member supports the internal infrastructure and is not intended to be used directly from your code. @@ -390,7 +416,8 @@ export class DxPagerComponent extends DxComponent implements OnDestroy { constructor(elementRef: ElementRef, ngZone: NgZone, templateHost: DxTemplateHost, - _watcherHelper: WatcherHelper, + private _watcherHelper: WatcherHelper, + private _idh: IterableDifferHelper, optionHost: NestedOptionHost, transferState: TransferState, @Inject(PLATFORM_ID) platformId: any) { @@ -404,6 +431,7 @@ export class DxPagerComponent extends DxComponent implements OnDestroy { { subscribe: 'optionChanged', emit: 'onOptionChanged' }, { emit: 'accessKeyChange' }, { emit: 'activeStateEnabledChange' }, + { emit: 'allowedPageSizesChange' }, { emit: 'disabledChange' }, { emit: 'elementAttrChange' }, { emit: 'focusStateEnabledChange' }, @@ -418,6 +446,8 @@ export class DxPagerComponent extends DxComponent implements OnDestroy { { emit: 'visibleChange' }, { emit: 'widthChange' } ]); + + this._idh.setHost(this); optionHost.setHost(this); } @@ -431,6 +461,32 @@ export class DxPagerComponent extends DxComponent implements OnDestroy { this._destroyWidget(); } + ngOnChanges(changes: SimpleChanges) { + super.ngOnChanges(changes); + this.setupChanges('allowedPageSizes', changes); + } + + setupChanges(prop: string, changes: SimpleChanges) { + if (!(prop in this._optionsToUpdate)) { + this._idh.setup(prop, changes); + } + } + + ngDoCheck() { + this._idh.doCheck('allowedPageSizes'); + this._watcherHelper.checkWatchers(); + super.ngDoCheck(); + super.clearChangedOptions(); + } + + _setOption(name: string, value: any) { + let isSetup = this._idh.setupSingle(name, value); + let isChanged = this._idh.getChanges(name, value) !== null; + + if (isSetup || isChanged) { + super._setOption(name, value); + } + } } @NgModule({ diff --git a/packages/devextreme-angular/src/ui/tree-list/nested/pager.ts b/packages/devextreme-angular/src/ui/tree-list/nested/pager.ts index b8a214bfba5d..4340690e0e83 100644 --- a/packages/devextreme-angular/src/ui/tree-list/nested/pager.ts +++ b/packages/devextreme-angular/src/ui/tree-list/nested/pager.ts @@ -14,7 +14,7 @@ import { -import { Mode, PagerDisplayMode, PagerPageSize } from 'devextreme/common'; +import { Mode, PagerDisplayMode } from 'devextreme/common'; import { NestedOptionHost, @@ -29,14 +29,6 @@ import { NestedOption } from 'devextreme-angular/core'; providers: [NestedOptionHost] }) export class DxoTreeListPagerComponent extends NestedOption implements OnDestroy, OnInit { - @Input() - get allowedPageSizes(): Mode | Array { - return this._getOption('allowedPageSizes'); - } - set allowedPageSizes(value: Mode | Array) { - this._setOption('allowedPageSizes', value); - } - @Input() get displayMode(): PagerDisplayMode { return this._getOption('displayMode'); diff --git a/packages/devextreme-react/src/common/index.ts b/packages/devextreme-react/src/common/index.ts index 876c3976a869..4df8fc5d068b 100644 --- a/packages/devextreme-react/src/common/index.ts +++ b/packages/devextreme-react/src/common/index.ts @@ -29,6 +29,7 @@ export { Orientation, PageLoadMode, PageOrientation, + PagerAllPagesMode, PagerDisplayMode, PagerPageSize, PatternRule, diff --git a/packages/devextreme-react/src/data-grid.ts b/packages/devextreme-react/src/data-grid.ts index 5a7a242e658d..d1d318af4b19 100644 --- a/packages/devextreme-react/src/data-grid.ts +++ b/packages/devextreme-react/src/data-grid.ts @@ -1953,7 +1953,6 @@ const OperationDescriptions: typeof _componentOperationDescriptions & IElementDe // owners: // DataGrid type IPagerProps = React.PropsWithChildren<{ - allowedPageSizes?: Array | "auto"; displayMode?: "adaptive" | "compact" | "full"; infoText?: string; label?: string; diff --git a/packages/devextreme-react/src/tree-list.ts b/packages/devextreme-react/src/tree-list.ts index 801eea1f7bcc..24fe56d5193b 100644 --- a/packages/devextreme-react/src/tree-list.ts +++ b/packages/devextreme-react/src/tree-list.ts @@ -1658,7 +1658,6 @@ const OperationDescriptions: typeof _componentOperationDescriptions & IElementDe // owners: // TreeList type IPagerProps = React.PropsWithChildren<{ - allowedPageSizes?: Array | "auto"; displayMode?: "adaptive" | "compact" | "full"; infoText?: string; label?: string; diff --git a/packages/devextreme-vue/src/common/index.ts b/packages/devextreme-vue/src/common/index.ts index 876c3976a869..4df8fc5d068b 100644 --- a/packages/devextreme-vue/src/common/index.ts +++ b/packages/devextreme-vue/src/common/index.ts @@ -29,6 +29,7 @@ export { Orientation, PageLoadMode, PageOrientation, + PagerAllPagesMode, PagerDisplayMode, PagerPageSize, PatternRule, diff --git a/packages/devextreme-vue/src/data-grid.ts b/packages/devextreme-vue/src/data-grid.ts index 752aee36edf5..410f67178f72 100644 --- a/packages/devextreme-vue/src/data-grid.ts +++ b/packages/devextreme-vue/src/data-grid.ts @@ -2091,7 +2091,6 @@ const DxPager = createConfigurationComponent({ emits: { "update:isActive": null, "update:hoveredElement": null, - "update:allowedPageSizes": null, "update:displayMode": null, "update:infoText": null, "update:label": null, @@ -2101,7 +2100,6 @@ const DxPager = createConfigurationComponent({ "update:visible": null, }, props: { - allowedPageSizes: [Array, String], displayMode: String, infoText: String, label: String, diff --git a/packages/devextreme-vue/src/pager.ts b/packages/devextreme-vue/src/pager.ts index 5234e0c910f4..7f8cbe9cf504 100644 --- a/packages/devextreme-vue/src/pager.ts +++ b/packages/devextreme-vue/src/pager.ts @@ -4,6 +4,7 @@ import { createComponent } from "./core/index"; type AccessibleOptions = Pick 0) { - return Math.max(1, Math.ceil(itemCount / pageSize)); - } - return 1; + return this.option('pageCount') as number; } } diff --git a/packages/devextreme/js/common.d.ts b/packages/devextreme/js/common.d.ts index d198e9f2fbe9..8630ad3ac268 100644 --- a/packages/devextreme/js/common.d.ts +++ b/packages/devextreme/js/common.d.ts @@ -848,7 +848,13 @@ export type PagerDisplayMode = 'adaptive' | 'compact' | 'full'; * @public * @namespace DevExpress.ui.dxPager */ -export type PagerPageSize = 'all' | 'auto'; +export type PagerAllPagesMode = 'all'; + +/** + * @public + * @namespace DevExpress.ui.dxPager + */ +export type PagerPageSize = PagerAllPagesMode & 'auto'; /** * @docid @@ -856,11 +862,6 @@ export type PagerPageSize = 'all' | 'auto'; * @namespace DevExpress.ui */ export type BasePagerOptions = { - /** - * @docid - * @default "auto" - */ - allowedPageSizes?: Array<(number | PagerPageSize)> | Mode; /** * @docid * @default "adaptive" diff --git a/packages/devextreme/js/ui/pager.d.ts b/packages/devextreme/js/ui/pager.d.ts index 2efd93ea6794..ee37cf72ec9a 100644 --- a/packages/devextreme/js/ui/pager.d.ts +++ b/packages/devextreme/js/ui/pager.d.ts @@ -1,6 +1,7 @@ import Widget, { WidgetOptions } from './widget/ui.widget'; import { BasePagerOptions, + PagerAllPagesMode, } from '../common'; /** @@ -10,25 +11,31 @@ import { * @docid */ export interface dxPagerOptions extends BasePagerOptions, WidgetOptions { - /** - * @docid - * @fires Properties.onOptionChanged - * @default 1 - */ - pageIndex?: number; + /** + * @docid + * @fires Properties.onOptionChanged + * @default 1 + */ + pageIndex?: number; - /** - * @docid - * @fires Properties.onOptionChanged - * @default 10 - */ - pageSize?: number; + /** + * @docid + * @fires Properties.onOptionChanged + * @default 5 + */ + pageSize?: number; - /** - * @docid - * @default 0 - */ - itemCount?: number; + /** + * @docid + * @default 1 + */ + itemCount?: number; + + /** + * @docid + * @default [5, 10] + */ + allowedPageSizes?: Array<(number | PagerAllPagesMode)>; } /** diff --git a/packages/devextreme/ts/dx.all.d.ts b/packages/devextreme/ts/dx.all.d.ts index 9eab9bfa6030..361707aef97b 100644 --- a/packages/devextreme/ts/dx.all.d.ts +++ b/packages/devextreme/ts/dx.all.d.ts @@ -7906,12 +7906,6 @@ declare module DevExpress.ui { * [descr:BasePagerOptions] */ export type BasePagerOptions = { - /** - * [descr:BasePagerOptions.allowedPageSizes] - */ - allowedPageSizes?: - | Array - | DevExpress.common.Mode; /** * [descr:BasePagerOptions.displayMode] */ @@ -21764,6 +21758,11 @@ declare module DevExpress.ui { * [descr:dxPagerOptions.itemCount] */ itemCount?: number; + + /** + * [descr:dxPagerOptions.allowedPageSizes] + */ + allowedPageSizes?: Array; } /** * [descr:dxPivotGrid] @@ -30967,8 +30966,9 @@ declare module DevExpress.ui.dxOverlay { export function baseZIndex(zIndex: number): void; } declare module DevExpress.ui.dxPager { + export type PagerAllPagesMode = 'all'; export type PagerDisplayMode = 'adaptive' | 'compact' | 'full'; - export type PagerPageSize = 'all' | 'auto'; + export type PagerPageSize = PagerAllPagesMode & 'auto'; } declare module DevExpress.ui.dxPivotGrid { export type Cell = dxPivotGridPivotGridCell; From 634d802c047703f19225468f5f8d138e97c1ebd3 Mon Sep 17 00:00:00 2001 From: Andrey Dolzhikov Date: Tue, 24 Sep 2024 19:10:08 +0300 Subject: [PATCH 13/38] resolve conflicts --- .../tests/pager/accessibility.ts | 4 +- .../tests/pager/baseProperties.ts | 5 + .../src/common/grids/index.ts | 2 - .../src/ui/data-grid/nested/pager.ts | 10 +- .../src/ui/nested/base/pager.ts | 9 +- .../devextreme-angular/src/ui/nested/pager.ts | 1 + .../src/ui/tree-list/nested/pager.ts | 10 +- packages/devextreme-react/src/common/grids.ts | 2 - packages/devextreme-react/src/data-grid.ts | 1 + packages/devextreme-react/src/tree-list.ts | 1 + packages/devextreme-vue/src/common/grids.ts | 2 - packages/devextreme-vue/src/data-grid.ts | 2 + packages/devextreme-vue/src/tree-list.ts | 2 + .../__internal/core/r1/component_wrapper.ts | 4 + .../js/__internal/core/widget/component.ts | 5 + .../grids/grid_core/pager/m_pager.ts | 3 +- .../pager/common/base_pager_props.ts | 8 +- .../js/__internal/pager/content.tsx | 10 +- .../js/__internal/pager/page_size/large.tsx | 10 +- .../__internal/pager/page_size/selector.tsx | 13 +- .../js/__internal/pager/page_size/small.tsx | 14 +- .../__internal/pager/resizable_container.tsx | 29 +-- .../pager/utils/validate_utils.test.ts | 41 ++++ .../pager/utils/validation_utils.ts | 47 ++++ .../__internal/pager/wrappers/grid_pager.ts | 41 +++- .../js/__internal/pager/wrappers/pager.ts | 4 +- packages/devextreme/js/common.d.ts | 8 +- packages/devextreme/js/common/grids.d.ts | 27 +-- .../devextreme/js/core/dom_component.d.ts | 1 + packages/devextreme/js/core/options/index.js | 4 + .../js/core/options/option_manager.js | 9 + .../pagerView.tests.js | 41 ++-- .../DevExpress.ui.widgets/pager.tests.js | 216 +++++++++--------- packages/devextreme/ts/dx.all.d.ts | 25 +- 34 files changed, 397 insertions(+), 214 deletions(-) create mode 100644 packages/devextreme/js/__internal/pager/utils/validate_utils.test.ts create mode 100644 packages/devextreme/js/__internal/pager/utils/validation_utils.ts diff --git a/e2e/testcafe-devextreme/tests/pager/accessibility.ts b/e2e/testcafe-devextreme/tests/pager/accessibility.ts index 13481610b537..4ef5e68f31fa 100644 --- a/e2e/testcafe-devextreme/tests/pager/accessibility.ts +++ b/e2e/testcafe-devextreme/tests/pager/accessibility.ts @@ -8,10 +8,10 @@ fixture.disablePageReloads`Pager` .page(url(__dirname, '../container.html')); const options: Options = { - // disabled: [true, false], //not supported + + pageIndex: [2, 5, 30], displayMode: ['full', 'compact'], infoText: [undefined, 'Total {2} items. Page {0} of {1}'], - pageCount: [10, 100], pageSizes: [[1, 2, 3], [3, 6, 9]], showInfo: [true, false], showNavigationButtons: [true, false], diff --git a/e2e/testcafe-devextreme/tests/pager/baseProperties.ts b/e2e/testcafe-devextreme/tests/pager/baseProperties.ts index 1f22dae50ef3..f76e979c2f27 100644 --- a/e2e/testcafe-devextreme/tests/pager/baseProperties.ts +++ b/e2e/testcafe-devextreme/tests/pager/baseProperties.ts @@ -20,6 +20,7 @@ test('Pager width and height property', async (t) => { }).before(async () => createWidget('dxPager', { width: 270, height: '95px', + itemCount: 50, })); test('Pager elementAttr property', async (t) => { @@ -51,6 +52,7 @@ test('Pager hint, disabled and accessKey properties', async (t) => { hint: 'Best Pager', disabled: true, accessKey: 'F', + itemCount: 50, })); test('Pager tabindex and state properties', async (t) => { @@ -79,6 +81,7 @@ test('Pager tabindex and state properties', async (t) => { .expect(pager.element.hasClass('dx-state-active')) .ok(); }).before(async () => createWidget('dxPager', { + itemCount: 50, disabled: false, width: '100%', focusStateEnabled: true, @@ -102,6 +105,7 @@ test('Pager focus method without focusStateEnabled', async (t) => { .ok(); }).before(async () => createWidget('dxPager', { focusStateEnabled: false, + itemCount: 50, })); test('Pager focus method with focusStateEnabled', async (t) => { @@ -119,4 +123,5 @@ test('Pager focus method with focusStateEnabled', async (t) => { .ok(); }).before(async () => createWidget('dxPager', { focusStateEnabled: true, + itemCount: 50, })); diff --git a/packages/devextreme-angular/src/common/grids/index.ts b/packages/devextreme-angular/src/common/grids/index.ts index 361c09678876..df82c809f91b 100644 --- a/packages/devextreme-angular/src/common/grids/index.ts +++ b/packages/devextreme-angular/src/common/grids/index.ts @@ -46,8 +46,6 @@ export { NewRowInfo, NewRowPosition, Pager, - PagerDisplayMode, - PagerPageSize, PagingBase, RowDragging, RowDraggingTemplateData, diff --git a/packages/devextreme-angular/src/ui/data-grid/nested/pager.ts b/packages/devextreme-angular/src/ui/data-grid/nested/pager.ts index 87265a435b0c..601e683189ba 100644 --- a/packages/devextreme-angular/src/ui/data-grid/nested/pager.ts +++ b/packages/devextreme-angular/src/ui/data-grid/nested/pager.ts @@ -14,7 +14,7 @@ import { -import { Mode, PagerDisplayMode } from 'devextreme/common'; +import { Mode, PagerDisplayMode, PagerPageSize } from 'devextreme/common'; import { NestedOptionHost, @@ -29,6 +29,14 @@ import { NestedOption } from 'devextreme-angular/core'; providers: [NestedOptionHost] }) export class DxoDataGridPagerComponent extends NestedOption implements OnDestroy, OnInit { + @Input() + get allowedPageSizes(): Mode | Array { + return this._getOption('allowedPageSizes'); + } + set allowedPageSizes(value: Mode | Array) { + this._setOption('allowedPageSizes', value); + } + @Input() get displayMode(): PagerDisplayMode { return this._getOption('displayMode'); diff --git a/packages/devextreme-angular/src/ui/nested/base/pager.ts b/packages/devextreme-angular/src/ui/nested/base/pager.ts index a31a65e02c76..f530d345e02e 100644 --- a/packages/devextreme-angular/src/ui/nested/base/pager.ts +++ b/packages/devextreme-angular/src/ui/nested/base/pager.ts @@ -5,12 +5,19 @@ import { Component, } from '@angular/core'; -import { Mode, PagerDisplayMode } from 'devextreme/common'; +import { Mode, PagerDisplayMode, PagerPageSize } from 'devextreme/common'; @Component({ template: '' }) export abstract class DxoPager extends NestedOption { + get allowedPageSizes(): Mode | Array { + return this._getOption('allowedPageSizes'); + } + set allowedPageSizes(value: Mode | Array) { + this._setOption('allowedPageSizes', value); + } + get displayMode(): PagerDisplayMode { return this._getOption('displayMode'); } diff --git a/packages/devextreme-angular/src/ui/nested/pager.ts b/packages/devextreme-angular/src/ui/nested/pager.ts index 453ba9080bcb..e90a65cd7a0b 100644 --- a/packages/devextreme-angular/src/ui/nested/pager.ts +++ b/packages/devextreme-angular/src/ui/nested/pager.ts @@ -27,6 +27,7 @@ import { DxoPager } from './base/pager'; styles: [''], providers: [NestedOptionHost], inputs: [ + 'allowedPageSizes', 'displayMode', 'infoText', 'label', diff --git a/packages/devextreme-angular/src/ui/tree-list/nested/pager.ts b/packages/devextreme-angular/src/ui/tree-list/nested/pager.ts index 4340690e0e83..b8a214bfba5d 100644 --- a/packages/devextreme-angular/src/ui/tree-list/nested/pager.ts +++ b/packages/devextreme-angular/src/ui/tree-list/nested/pager.ts @@ -14,7 +14,7 @@ import { -import { Mode, PagerDisplayMode } from 'devextreme/common'; +import { Mode, PagerDisplayMode, PagerPageSize } from 'devextreme/common'; import { NestedOptionHost, @@ -29,6 +29,14 @@ import { NestedOption } from 'devextreme-angular/core'; providers: [NestedOptionHost] }) export class DxoTreeListPagerComponent extends NestedOption implements OnDestroy, OnInit { + @Input() + get allowedPageSizes(): Mode | Array { + return this._getOption('allowedPageSizes'); + } + set allowedPageSizes(value: Mode | Array) { + this._setOption('allowedPageSizes', value); + } + @Input() get displayMode(): PagerDisplayMode { return this._getOption('displayMode'); diff --git a/packages/devextreme-react/src/common/grids.ts b/packages/devextreme-react/src/common/grids.ts index 6ccb67c5afa2..4b5dacb77e6c 100644 --- a/packages/devextreme-react/src/common/grids.ts +++ b/packages/devextreme-react/src/common/grids.ts @@ -46,8 +46,6 @@ export { NewRowInfo, NewRowPosition, Pager, - PagerDisplayMode, - PagerPageSize, PagingBase, RowDragging, RowDraggingTemplateData, diff --git a/packages/devextreme-react/src/data-grid.ts b/packages/devextreme-react/src/data-grid.ts index d1d318af4b19..5a7a242e658d 100644 --- a/packages/devextreme-react/src/data-grid.ts +++ b/packages/devextreme-react/src/data-grid.ts @@ -1953,6 +1953,7 @@ const OperationDescriptions: typeof _componentOperationDescriptions & IElementDe // owners: // DataGrid type IPagerProps = React.PropsWithChildren<{ + allowedPageSizes?: Array | "auto"; displayMode?: "adaptive" | "compact" | "full"; infoText?: string; label?: string; diff --git a/packages/devextreme-react/src/tree-list.ts b/packages/devextreme-react/src/tree-list.ts index 24fe56d5193b..801eea1f7bcc 100644 --- a/packages/devextreme-react/src/tree-list.ts +++ b/packages/devextreme-react/src/tree-list.ts @@ -1658,6 +1658,7 @@ const OperationDescriptions: typeof _componentOperationDescriptions & IElementDe // owners: // TreeList type IPagerProps = React.PropsWithChildren<{ + allowedPageSizes?: Array | "auto"; displayMode?: "adaptive" | "compact" | "full"; infoText?: string; label?: string; diff --git a/packages/devextreme-vue/src/common/grids.ts b/packages/devextreme-vue/src/common/grids.ts index 6ccb67c5afa2..4b5dacb77e6c 100644 --- a/packages/devextreme-vue/src/common/grids.ts +++ b/packages/devextreme-vue/src/common/grids.ts @@ -46,8 +46,6 @@ export { NewRowInfo, NewRowPosition, Pager, - PagerDisplayMode, - PagerPageSize, PagingBase, RowDragging, RowDraggingTemplateData, diff --git a/packages/devextreme-vue/src/data-grid.ts b/packages/devextreme-vue/src/data-grid.ts index 410f67178f72..752aee36edf5 100644 --- a/packages/devextreme-vue/src/data-grid.ts +++ b/packages/devextreme-vue/src/data-grid.ts @@ -2091,6 +2091,7 @@ const DxPager = createConfigurationComponent({ emits: { "update:isActive": null, "update:hoveredElement": null, + "update:allowedPageSizes": null, "update:displayMode": null, "update:infoText": null, "update:label": null, @@ -2100,6 +2101,7 @@ const DxPager = createConfigurationComponent({ "update:visible": null, }, props: { + allowedPageSizes: [Array, String], displayMode: String, infoText: String, label: String, diff --git a/packages/devextreme-vue/src/tree-list.ts b/packages/devextreme-vue/src/tree-list.ts index 704b46260259..7484cbc62651 100644 --- a/packages/devextreme-vue/src/tree-list.ts +++ b/packages/devextreme-vue/src/tree-list.ts @@ -1846,6 +1846,7 @@ const DxPager = createConfigurationComponent({ emits: { "update:isActive": null, "update:hoveredElement": null, + "update:allowedPageSizes": null, "update:displayMode": null, "update:infoText": null, "update:label": null, @@ -1855,6 +1856,7 @@ const DxPager = createConfigurationComponent({ "update:visible": null, }, props: { + allowedPageSizes: [Array, String], displayMode: String, infoText: String, label: String, diff --git a/packages/devextreme/js/__internal/core/r1/component_wrapper.ts b/packages/devextreme/js/__internal/core/r1/component_wrapper.ts index f97801e567a3..a11bbebfb715 100644 --- a/packages/devextreme/js/__internal/core/r1/component_wrapper.ts +++ b/packages/devextreme/js/__internal/core/r1/component_wrapper.ts @@ -483,6 +483,10 @@ export class ComponentWrapper extends DOMComponent { this._invalidate(); } + _validateOptions(options: Record): Record { + return super._validateOptions(options); + } + _extractDefaultSlot(): VNode | null { if (this.option('_hasAnonymousTemplateContent')) { // eslint-disable-next-line @typescript-eslint/no-unsafe-return diff --git a/packages/devextreme/js/__internal/core/widget/component.ts b/packages/devextreme/js/__internal/core/widget/component.ts index ec6b5587f570..c048bcc57352 100644 --- a/packages/devextreme/js/__internal/core/widget/component.ts +++ b/packages/devextreme/js/__internal/core/widget/component.ts @@ -167,6 +167,7 @@ export class Component< this._options.onStartChange(() => this.beginUpdate()); this._options.onEndChange(() => this.endUpdate()); this._options.addRules(this._defaultOptionsRules()); + this._options.validateOptions((o) => this._validateOptions(o)); // eslint-disable-next-line @typescript-eslint/prefer-optional-chain if (options && options.onInitializing) { @@ -499,4 +500,8 @@ export class Component< this._options.reset(name); this.endUpdate(); } + + _validateOptions(options: TProperties): TProperties { + return options; + } } diff --git a/packages/devextreme/js/__internal/grids/grid_core/pager/m_pager.ts b/packages/devextreme/js/__internal/grids/grid_core/pager/m_pager.ts index 3abd1316e707..ac127dedc0c8 100644 --- a/packages/devextreme/js/__internal/grids/grid_core/pager/m_pager.ts +++ b/packages/devextreme/js/__internal/grids/grid_core/pager/m_pager.ts @@ -94,10 +94,11 @@ export class PagerView extends modules.View { pagesNavigatorVisible: pagerOptions.visible, showNavigationButtons: pagerOptions.showNavigationButtons, label: pagerOptions.label, - pageSizes: that.getPageSizes(), + allowedPageSizes: that.getPageSizes(), itemCount: dataController.totalCount(), hasKnownLastPage: dataController.hasKnownLastPage(), rtlEnabled: that.option('rtlEnabled'), + _skipValidation: true, pageIndexChanged(pageIndex) { if (dataController.pageIndex() !== pageIndex - 1) { dataController.pageIndex(pageIndex - 1); diff --git a/packages/devextreme/js/__internal/pager/common/base_pager_props.ts b/packages/devextreme/js/__internal/pager/common/base_pager_props.ts index 8607721fefe1..e64f0fbbd478 100644 --- a/packages/devextreme/js/__internal/pager/common/base_pager_props.ts +++ b/packages/devextreme/js/__internal/pager/common/base_pager_props.ts @@ -18,7 +18,7 @@ export interface BasePagerProps extends BaseWidgetProps { hasKnownLastPage?: boolean; pagesNavigatorVisible?: boolean | 'auto'; showPageSizes?: boolean; - pageSizes: (number | PagerAllPagesMode)[]; + allowedPageSizes: (number | PagerAllPagesMode)[]; rtlEnabled?: boolean; showNavigationButtons?: boolean; itemCount?: number; @@ -32,13 +32,13 @@ export const BasePagerDefaultProps: BasePagerProps = { showInfo: false, displayMode: 'adaptive', maxPagesCount: 10, - pageCount: 10, + pageCount: 1, visible: true, hasKnownLastPage: true, pagesNavigatorVisible: 'auto', showPageSizes: true, - pageSizes: [5, 10], + allowedPageSizes: [5, 10], showNavigationButtons: false, - itemCount: 0, + itemCount: 1, label: messageLocalization.format('dxPager-ariaLabel'), }; diff --git a/packages/devextreme/js/__internal/pager/content.tsx b/packages/devextreme/js/__internal/pager/content.tsx index 63c6fcabac4f..161112014d0c 100644 --- a/packages/devextreme/js/__internal/pager/content.tsx +++ b/packages/devextreme/js/__internal/pager/content.tsx @@ -25,7 +25,7 @@ export interface PagerContentProps extends PagerProps { infoTextVisible: boolean; isLargeDisplayMode: boolean; rootElementRef?: RefObject; - pageSizesRef?: RefObject; + allowedPageSizesRef?: RefObject; pagesRef?: RefObject; infoTextRef?: RefObject; } @@ -179,10 +179,10 @@ export class PagerContent extends InfernoComponent { rtlEnabled, visible, showPageSizes, - pageSizesRef, + allowedPageSizesRef, pageSize, pageSizeChangedInternal, - pageSizes, + allowedPageSizes, infoTextRef, infoText, pageCount, @@ -232,11 +232,11 @@ export class PagerContent extends InfernoComponent { > {showPageSizes && ( )} {this.getPagesContainerVisible() && ( diff --git a/packages/devextreme/js/__internal/pager/page_size/large.tsx b/packages/devextreme/js/__internal/pager/page_size/large.tsx index fd7f1ce7c95f..6c1520746fdc 100644 --- a/packages/devextreme/js/__internal/pager/page_size/large.tsx +++ b/packages/devextreme/js/__internal/pager/page_size/large.tsx @@ -13,14 +13,14 @@ import { PagerDefaultProps, type PagerProps } from '../common/pager_props'; import type { FullPageSize } from '../common/types'; export interface PageSizeLargeProps { - pageSizes: FullPageSize[]; + allowedPageSizes: FullPageSize[]; } // eslint-disable-next-line @typescript-eslint/no-type-alias type PageSizeLargePropsType = Pick & PageSizeLargeProps; export const PageSizeLargeDefaultProps: PageSizeLargePropsType = { - pageSizes: [], + allowedPageSizes: [], pageSize: PagerDefaultProps.pageSize, pageSizeChangedInternal: PagerDefaultProps.pageSizeChangedInternal, }; @@ -57,9 +57,9 @@ export class PageSizeLarge extends BaseInfernoComponent }[] => { const { pageSize, - pageSizes, + allowedPageSizes, } = this.props; - return pageSizes.map((_ref3, index) => { + return allowedPageSizes.map((_ref3, index) => { const { text, value: processedPageSize, @@ -90,7 +90,7 @@ export class PageSizeLarge extends BaseInfernoComponent componentWillUpdate(nextProps: PageSizeLargePropsType): void { const componentChanged = this.props.pageSize !== nextProps.pageSize - || this.props.pageSizes !== nextProps.pageSizes + || this.props.allowedPageSizes !== nextProps.allowedPageSizes || this.props.pageSizeChangedInternal !== nextProps.pageSizeChangedInternal; if (componentChanged) { this.__getterCache.pageSizesText = undefined; diff --git a/packages/devextreme/js/__internal/pager/page_size/selector.tsx b/packages/devextreme/js/__internal/pager/page_size/selector.tsx index d1f01a273909..6b4fda3cc641 100644 --- a/packages/devextreme/js/__internal/pager/page_size/selector.tsx +++ b/packages/devextreme/js/__internal/pager/page_size/selector.tsx @@ -24,13 +24,13 @@ export interface PageSizeSelectorProps { } // eslint-disable-next-line @typescript-eslint/no-type-alias -type PageSizeSelectorPropsType = Pick & PageSizeSelectorProps; +type PageSizeSelectorPropsType = Pick & PageSizeSelectorProps; const PageSizeSelectorDefaultProps: PageSizeSelectorPropsType = { isLargeDisplayMode: true, pageSize: PagerDefaultProps.pageSize, pageSizeChangedInternal: PagerDefaultProps.pageSizeChangedInternal, - pageSizes: PagerDefaultProps.pageSizes, + allowedPageSizes: PagerDefaultProps.allowedPageSizes, }; export class PageSizeSelector extends InfernoComponent { @@ -75,14 +75,15 @@ export class PageSizeSelector extends InfernoComponent(mapFunction); + // eslint-disable-next-line max-len + const result: FullPageSize[] | undefined = this.props.allowedPageSizes.map(mapFunction); this.__getterCache.normalizedPageSizes = result; return result; } componentWillUpdate(nextProps: PageSizeSelectorPropsType) { super.componentWillUpdate(); - if (this.props.pageSizes !== nextProps.pageSizes) { + if (this.props.allowedPageSizes !== nextProps.allowedPageSizes) { this.__getterCache.normalizedPageSizes = undefined; } } @@ -98,7 +99,7 @@ export class PageSizeSelector extends InfernoComponent {isLargeDisplayMode && ( @@ -106,7 +107,7 @@ export class PageSizeSelector extends InfernoComponent diff --git a/packages/devextreme/js/__internal/pager/page_size/small.tsx b/packages/devextreme/js/__internal/pager/page_size/small.tsx index 3f1fdfa12ccf..f2e0a25e5579 100644 --- a/packages/devextreme/js/__internal/pager/page_size/small.tsx +++ b/packages/devextreme/js/__internal/pager/page_size/small.tsx @@ -12,7 +12,7 @@ import { getElementMinWidth } from '../utils/get_element_width'; export interface PagerSmallProps { parentRef?: RefObject; - pageSizes: FullPageSize[]; + allowedPageSizes: FullPageSize[]; inputAttr?: any; } @@ -20,7 +20,7 @@ const PagerSmallDefaultProps: PagerSmallProps = { inputAttr: { 'aria-label': messageLocalization.format('dxPager-ariaPageSize'), }, - pageSizes: [], + allowedPageSizes: [], }; type PageSizeSmallPropsType = PagerSmallProps & Pick; @@ -53,7 +53,7 @@ export class PageSizeSmall extends InfernoComponent { this.state.minWidth, this.props.pageSize, this.props.pageSizeChangedInternal, - this.props.pageSizes, + this.props.allowedPageSizes, this.props.inputAttr, ]; return [new InfernoEffect(this.updateWidth, dependency)]; @@ -65,7 +65,7 @@ export class PageSizeSmall extends InfernoComponent { this.state.minWidth, this.props.pageSize, this.props.pageSizeChangedInternal, - this.props.pageSizes, + this.props.allowedPageSizes, this.props.inputAttr, ]; this._effects[0]?.update(dependency); @@ -80,14 +80,14 @@ export class PageSizeSmall extends InfernoComponent { getWidth(): number { return calculateValuesFittedWidth( this.state.minWidth, - this.props.pageSizes?.map((p) => p.value), + this.props.allowedPageSizes?.map((p) => p.value), ); } render(): JSX.Element { const { inputAttr, - pageSizes, + allowedPageSizes, pageSize, pageSizeChangedInternal, } = this.props; @@ -95,7 +95,7 @@ export class PageSizeSmall extends InfernoComponent { { pageSizes: T; pages: T; info: T } -interface MainElements { parent: T; pageSizes: T; pages: T } +interface ChildElements { allowedPageSizes: T; pages: T; info: T } +interface MainElements { parent: T; allowedPageSizes: T; pages: T } interface AllElements extends ChildElements { parent: T } export function calculateLargeDisplayMode({ parent: parentWidth, - pageSizes: pageSizesWidth, + allowedPageSizes: pageSizesWidth, pages: pagesWidth, }: MainElements): boolean { return parentWidth - (pageSizesWidth + pagesWidth) > 0; } export function calculateInfoTextVisible({ - parent: parentWidth, pageSizes: pageSizesWidth, + parent: parentWidth, allowedPageSizes: pageSizesWidth, pages: pagesWidth, info: infoWidth, }: AllElements): boolean { const minimalWidth = pageSizesWidth + pagesWidth + infoWidth; @@ -34,15 +34,15 @@ export function calculateInfoTextVisible({ } function getElementsWidth({ - parent, pageSizes, pages, info, + parent, allowedPageSizes, pages, info, }: AllElements): AllElements { const parentWidth = getElementContentWidth(parent); - const pageSizesWidth = getElementWidth(pageSizes); + const pageSizesWidth = getElementWidth(allowedPageSizes); const infoWidth = getElementWidth(info); const pagesHtmlWidth = getElementWidth(pages); return { parent: parentWidth, - pageSizes: pageSizesWidth, + allowedPageSizes: pageSizesWidth, info: infoWidth + getElementStyle('marginLeft', info) + getElementStyle('marginRight', info), pages: pagesHtmlWidth, }; @@ -71,7 +71,8 @@ export class ResizableContainer extends InfernoComponent = infernoCreateRef() as RefObject; - public pageSizesRef?: RefObject = infernoCreateRef() as RefObject; + // eslint-disable-next-line max-len + public allowedPageSizesRef?: RefObject = infernoCreateRef() as RefObject; public elementsWidth: ChildElements = {} as ChildElements; @@ -148,7 +149,7 @@ export class ResizableContainer extends InfernoComponent; } if (isEmpty || this.state.isLargeDisplayMode) { - this.elementsWidth.pageSizes = currentElementsWidth.pageSizes; + this.elementsWidth.allowedPageSizes = currentElementsWidth.allowedPageSizes; this.elementsWidth.pages = currentElementsWidth.pages; } if (isEmpty || this.state.infoTextVisible) { @@ -241,7 +242,7 @@ export class ResizableContainer extends InfernoComponent { + describe('validateOption function', () => { + each` + oldPageSize | oldPageIndex | oldItemCount | expectedPageSize | expectedPageIndex | expectedItemCount | expectedPageCount + ${5} | ${1} | ${1} | ${5} | ${1} | ${1} | ${1} // initial state + ${10} | ${500} | ${100} | ${10} | ${10} | ${100} | ${10} + ${3} | ${2} | ${2} | ${3} | ${1} | ${2} | ${1} + ${3} | ${2} | ${2} | ${3} | ${1} | ${2} | ${1} + ${3} | ${-2} | ${-5} | ${3} | ${1} | ${0} | ${1} + ${-5} | ${10} | ${20} | ${1} | ${10} | ${20} | ${20} + ${5} | ${1} | ${100} | ${5} | ${1} | ${100} | ${20} + ` + .it('should calculate the correct state', ({ + oldPageSize, + oldPageIndex, + oldItemCount, + + expectedPageSize, + expectedPageIndex, + expectedItemCount, + expectedPageCount, + }) => { + const result = validateOptions(oldPageSize, oldPageIndex, oldItemCount); + const { + pageSize, + pageIndex, + itemCount, + pageCount, + } = result; + + expect(pageSize).toEqual(expectedPageSize); + expect(pageIndex).toEqual(expectedPageIndex); + expect(itemCount).toEqual(expectedItemCount); + expect(pageCount).toEqual(expectedPageCount); + }); + }); +}); diff --git a/packages/devextreme/js/__internal/pager/utils/validation_utils.ts b/packages/devextreme/js/__internal/pager/utils/validation_utils.ts new file mode 100644 index 000000000000..134f5e993203 --- /dev/null +++ b/packages/devextreme/js/__internal/pager/utils/validation_utils.ts @@ -0,0 +1,47 @@ +function getPageSize(pageSize: number): number { + if (pageSize < 1) { + return 1; + } + return pageSize; +} + +function getItemCount(itemCount: number): number { + if (itemCount < 0) { + return 0; + } + return itemCount; +} + +function getPageCount(pageSize: number, itemCount: number): number { + if (pageSize > 0 && itemCount > 0) { + return Math.max(1, Math.ceil(itemCount / pageSize)); + } + return 1; +} + +function getPageIndex(pageIndex: number, pageSize: number, itemCount: number): number { + if (pageIndex < 1) { + return 1; + } + + const pageCount = getPageCount(pageSize, itemCount); + return Math.min(pageIndex, pageCount); +} + +export function validateOptions( + oldPageSize: number, + oldPageIndex: number, + oldItemCount: number, +): Record { + const pageSize = getPageSize(oldPageSize); + const itemCount = getItemCount(oldItemCount); + const pageCount = getPageCount(pageSize, oldItemCount); + const pageIndex = getPageIndex(oldPageIndex, pageSize, itemCount); + + return { + pageSize, + pageIndex, + itemCount, + pageCount, + }; +} diff --git a/packages/devextreme/js/__internal/pager/wrappers/grid_pager.ts b/packages/devextreme/js/__internal/pager/wrappers/grid_pager.ts index 9a00b3115367..cccd889179be 100644 --- a/packages/devextreme/js/__internal/pager/wrappers/grid_pager.ts +++ b/packages/devextreme/js/__internal/pager/wrappers/grid_pager.ts @@ -1,6 +1,7 @@ /* eslint-disable @typescript-eslint/ban-types */ import { ComponentWrapper } from '../../core/r1/component_wrapper'; import type { Option } from '../../core/r1/types'; +import { validateOptions } from '../utils/validation_utils'; export class GridPagerWrapper extends ComponentWrapper { _optionChanged(args: Option): void { @@ -24,7 +25,45 @@ export class GridPagerWrapper extends ComponentWrapper { super._optionChanged(args); } - protected getPageCount(): number { + public getPageCount(): number { return this.option('pageCount') as number; } + + _validateOptions(options: Record): Record { + if (options._skipValidation || this.option('_skipValidation')) { + return options; + } + + const initialOptions = super._validateOptions(options); + let { + pageSize, + pageIndex, + itemCount, + // eslint-disable-next-line prefer-const + ...rest + } = initialOptions; + + if (pageSize === undefined) { + pageSize = this.option('pageSize') as number; + } + + if (pageIndex === undefined) { + pageIndex = this.option('pageIndex') as number; + } + + if (itemCount === undefined) { + itemCount = this.option('itemCount') as number; + } + + const validatedOptions = validateOptions( + pageSize as number, + pageIndex as number, + itemCount as number, + ); + + return { + ...rest, + ...validatedOptions, + }; + } } diff --git a/packages/devextreme/js/__internal/pager/wrappers/pager.ts b/packages/devextreme/js/__internal/pager/wrappers/pager.ts index 8f2e70bca843..2c82a8b30691 100644 --- a/packages/devextreme/js/__internal/pager/wrappers/pager.ts +++ b/packages/devextreme/js/__internal/pager/wrappers/pager.ts @@ -38,7 +38,7 @@ export default class Pager extends GridPagerWrapper { 'hasKnownLastPage', 'pagesNavigatorVisible', 'showPageSizes', - 'pageSizes', + 'allowedPageSizes', 'rtlEnabled', 'showNavigationButtons', 'itemCount', @@ -58,6 +58,8 @@ export default class Pager extends GridPagerWrapper { 'activeStateEnabled', 'focusStateEnabled', 'hoverStateEnabled', + + '_skipValidation', ], }; } diff --git a/packages/devextreme/js/common.d.ts b/packages/devextreme/js/common.d.ts index 8630ad3ac268..b23ccfc11090 100644 --- a/packages/devextreme/js/common.d.ts +++ b/packages/devextreme/js/common.d.ts @@ -854,7 +854,7 @@ export type PagerAllPagesMode = 'all'; * @public * @namespace DevExpress.ui.dxPager */ -export type PagerPageSize = PagerAllPagesMode & 'auto'; +export type PagerPageSize = 'all' | 'auto'; /** * @docid @@ -892,4 +892,10 @@ export type BasePagerOptions = { * @default "Page Navigation" */ label?: string; + + /** + * @docid + * @default [5, 10] + */ + allowedPageSizes?: Array<(number | PagerAllPagesMode)> | 'auto'; }; diff --git a/packages/devextreme/js/common/grids.d.ts b/packages/devextreme/js/common/grids.d.ts index 7a5fe012ea13..af38ff8a9b2b 100644 --- a/packages/devextreme/js/common/grids.d.ts +++ b/packages/devextreme/js/common/grids.d.ts @@ -12,8 +12,7 @@ import { Sortable, SortOrder, ValidationRule, - PagerDisplayMode as PagerDisplayModeType, - PagerPageSize as PagerPageSizeType, + PagerPageSize, BasePagerOptions, } from '../common'; @@ -73,20 +72,6 @@ import { } from '../ui/widget/ui.widget'; import { PositionConfig } from '../animation/position'; -/** - * @docid - * @public - * @namespace DevExpress.common.grids - */ -export type PagerDisplayMode = PagerDisplayModeType; - -/** - * @docid - * @public - * @namespace DevExpress.common.grids - */ -export type PagerPageSize = PagerPageSizeType; - /** * @docid * @hidden @@ -2471,11 +2456,17 @@ export type NewRowPosition = 'first' | 'last' | 'pageBottom' | 'pageTop' | 'view * @namespace DevExpress.common.grids */ export type Pager = BasePagerOptions & { - /** + /** + * @docid + * @default "auto" + */ + allowedPageSizes?: Array<(number | PagerPageSize)> | Mode; + + /** * @docid * @default "auto" */ - visible?: boolean | Mode; + visible?: boolean | Mode; }; /** diff --git a/packages/devextreme/js/core/dom_component.d.ts b/packages/devextreme/js/core/dom_component.d.ts index b8f221da232f..d0155930d743 100644 --- a/packages/devextreme/js/core/dom_component.d.ts +++ b/packages/devextreme/js/core/dom_component.d.ts @@ -135,6 +135,7 @@ export default class DOMComponent extends Component = { diff --git a/packages/devextreme/js/core/options/index.js b/packages/devextreme/js/core/options/index.js index ea660776c05c..1ad78b9f1d06 100644 --- a/packages/devextreme/js/core/options/index.js +++ b/packages/devextreme/js/core/options/index.js @@ -10,6 +10,7 @@ export class Options { this._deprecatedCallback; this._startChangeCallback; this._endChangeCallback; + this._validateOptionsCallback; this._default = defaultOptions; this._deprecated = deprecatedOptions; @@ -142,6 +143,9 @@ export class Options { onChanged(callBack) { this._optionManager.onChanged(callBack); } + validateOptions(callBack) { + this._optionManager.onValidateOptions(callBack); + } onDeprecated(callBack) { this._deprecatedCallback = callBack; diff --git a/packages/devextreme/js/core/options/option_manager.js b/packages/devextreme/js/core/options/option_manager.js index 3d73e856b048..69c5f1b297b9 100644 --- a/packages/devextreme/js/core/options/option_manager.js +++ b/packages/devextreme/js/core/options/option_manager.js @@ -16,6 +16,7 @@ export class OptionManager { this._changingCallback; this._changedCallback; this._namePreparedCallbacks; + this._validateOptionsCallback; } _setByReference(options, rulesOptions) { @@ -68,6 +69,10 @@ export class OptionManager { this._prepareRelevantNames(options, name, options[name], silent); } + if(this._validateOptionsCallback) { + options = this._validateOptionsCallback(options); + } + for(const name in options) { this._setPreparedValue(name, options[name], merge, silent); } @@ -85,6 +90,10 @@ export class OptionManager { this._changedCallback = callBack; } + onValidateOptions(callback) { + this._validateOptionsCallback = callback; + } + dispose() { this._changingCallback = noop; this._changedCallback = noop; diff --git a/packages/devextreme/testing/tests/DevExpress.ui.widgets.dataGrid/pagerView.tests.js b/packages/devextreme/testing/tests/DevExpress.ui.widgets.dataGrid/pagerView.tests.js index 3b0d699ae807..1a10cff8af08 100644 --- a/packages/devextreme/testing/tests/DevExpress.ui.widgets.dataGrid/pagerView.tests.js +++ b/packages/devextreme/testing/tests/DevExpress.ui.widgets.dataGrid/pagerView.tests.js @@ -37,9 +37,9 @@ QUnit.module('Pager', { }; this.dataControllerOptions = { pageSize: 7, - pageCount: 20, + pageCount: 21, pageIndex: 1, - totalCount: 143 + totalCount: 143, }; this.dataController = new MockDataController(this.dataControllerOptions); setupDataGridModules(this, ['data', 'pager'], { @@ -93,10 +93,10 @@ QUnit.module('Pager', { assert.equal(testElement.find('.dx-pager').length, 1, 'pager element'); assert.equal(pager.option('maxPagesCount'), 10, 'maxPagesCount'); assert.equal(pager.option('pageIndex'), 2, 'pageIndex'); - assert.equal(pager.option('pageCount'), 20, 'pageCount'); + assert.equal(pager.option('pageCount'), 21, 'pageCount'); assert.equal(pager.option('pageSize'), 7, 'pageSize'); assert.ok(pager.option('showPageSizes'), 'showPageSizes'); - assert.deepEqual(pager.option('pageSizes'), [2, 7, 9], 'pageSizes'); + assert.deepEqual(pager.option('allowedPageSizes'), [2, 7, 9], 'allowedPageSizes'); assert.ok(!pager.option('hasKnownLastPage'), 'hasKnownLastPage'); assert.ok(pager.option('visible'), 'visible'); }); @@ -133,7 +133,7 @@ QUnit.module('Pager', { this.clock.tick(10); // assert - assert.equal(that.dataControllerOptions.pageIndex, '19', 'page index'); + assert.equal(that.dataControllerOptions.pageIndex, '20', 'page index'); }); QUnit.test('Page index is changed from dataController', function(assert) { @@ -180,19 +180,6 @@ QUnit.module('Pager', { assert.equal(pagerView.getPager().option('pageIndex'), 15, 'page index changed'); }); - QUnit.test('Pages count is changed from dataController', function(assert) { - // arrange - const testElement = $('#container'); - const pagerView = this.pagerView; - - // act - pagerView.render(testElement, {}); - this.dataController.updatePagesCount(7); - - // assert - assert.equal(pagerView.getPager().option('pageCount'), 7, 'pageCount'); - }); - QUnit.test('Page size is changed from dataController', function(assert) { // arrange const testElement = $('#container'); @@ -293,11 +280,13 @@ QUnit.module('Pager', { // assert assert.equal(pagerView._createComponent.callCount, 1, '_createComponent call count after partial update'); - assert.equal(pagerView.getPager().option.callCount, 1, 'pager option call count after partial update'); + + // call count increased because the component should check if it need to perform the validation + assert.equal(pagerView.getPager().option.callCount, 2, 'pager option call count after partial update'); assert.deepEqual(pagerView.getPager().option.getCall(0).args, [{ hasKnownLastPage: true, // T697587 itemCount: 143, // #7259 - pageCount: 20, + pageCount: 21, pageIndex: 2, // T886628 pageSize: 7 // T886628 }], 'pager option args'); @@ -634,7 +623,7 @@ QUnit.module('Pager', { // act pagerView.render(testElement); - assert.equal($('.dx-info').text(), 'Page 2 of 20 (143 items)'); + assert.equal($('.dx-info').text(), 'Page 2 of 21 (143 items)'); }); QUnit.test('Custom show info', function(assert) { @@ -647,7 +636,7 @@ QUnit.module('Pager', { // act pagerView.render(testElement); - assert.equal($('.dx-info').text(), 'Page 2 sur 20'); + assert.equal($('.dx-info').text(), 'Page 2 sur 21'); }); QUnit.test('Invalidate instead of render for options', function(assert) { @@ -672,7 +661,7 @@ QUnit.module('Pager', { assert.equal(renderCounter, 1, 'count of rendering'); }); - QUnit.test('Pager should be visible when set the pageSize equal to totalCount', function(assert) { + QUnit.test('Pager should be visible when set the pageSize equal to itemCount', function(assert) { // arrange const $testElement = $('#container'); @@ -681,7 +670,7 @@ QUnit.module('Pager', { pageSize: 4, pageCount: 2, pageIndex: 0, - totalCount: 6 + itemCount: 6 }; this.pagerView.render($testElement); sinon.spy(this.pagerView, '_invalidate'); @@ -706,7 +695,7 @@ QUnit.module('Pager', { pageSize: 4, pageCount: 2, pageIndex: 0, - totalCount: 6 + itemCount: 6 }; this.pagerView.render($testElement); // act @@ -733,7 +722,7 @@ QUnit.module('Pager', { pageSize: 4, pageCount: 2, pageIndex: 0, - totalCount: 6 + itemCount: 6 }; this.pagerView.render($testElement); diff --git a/packages/devextreme/testing/tests/DevExpress.ui.widgets/pager.tests.js b/packages/devextreme/testing/tests/DevExpress.ui.widgets/pager.tests.js index 27e215dddd70..1704e73d3c71 100644 --- a/packages/devextreme/testing/tests/DevExpress.ui.widgets/pager.tests.js +++ b/packages/devextreme/testing/tests/DevExpress.ui.widgets/pager.tests.js @@ -77,15 +77,15 @@ function() { assert.ok(instance.option('visible'), 'visible'); assert.equal(instance.option('pageIndex'), 1, 'pageIndex'); assert.equal(instance.option('maxPagesCount'), 10, 'maxPagesCount'); - assert.equal(instance.option('pageCount'), 10, 'pageCount'); - assert.deepEqual(instance.option('pageSizes'), [5, 10], 'pageSizes'); + assert.equal(instance.option('pageCount'), 1, 'pageCount'); + assert.deepEqual(instance.option('allowedPageSizes'), [5, 10], 'allowedPageSizes'); assert.ok(instance.option('hasKnownLastPage'), 'hasKnownLastPage'); assert.equal(instance.option('pageSize'), 5, 'pageSize'); // assert.deepEqual(instance.option('pageIndexChanged'), commonUtils.noop, 'pageIndexChanged'); // assert.deepEqual(instance.option('pageSizeChanged'), commonUtils.noop, 'pageSizeChanged'); }); QUnit.test('Markup init', function(assert) { - const $pager = $('#container').dxPager(); + const $pager = $('#container').dxPager({ itemCount: 50 }); const $pageSizeButton = $pager.find('.dx-page-size').first(); const $pageNumberButton = $pager.find('.dx-page').eq(2); @@ -114,6 +114,7 @@ function() { QUnit.test('Events are called', function(assert) { const $pager = $('#container').dxPager({ + itemCount: 50, pageIndexChanged: function(pageIndex) { testPageIndex = pageIndex; }, @@ -132,7 +133,7 @@ function() { }); QUnit.test('Markup when a pages count less max pages count', function(assert) { - const $pager = $('#container').dxPager({ pageCount: 15 }); + const $pager = $('#container').dxPager({ itemCount: 75, pageCount: 15 }); assert.equal($pager.find('.dx-page').length, 6, 'page elements count'); assert.strictEqual($pager.find('.dx-separator').length, 1, 'page separator element'); @@ -144,8 +145,9 @@ function() { assert.equal($pager.find('.dx-page-sizes' + ' .' + 'dx-selection').length, 1, 'page size selection'); }); - QUnit.test('Pager is not rendered if pages count equal zero', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 7, pageCount: 0 }); + // TODO: Contradict with a grid behavior. When there is no records it shows a pager with one page + QUnit.test.skip('Pager is not rendered if pages count equal zero', function(assert) { + const $pager = $('#container').dxPager({ maxPagesCount: 7, pageCount: 0, itemCount: 0 }); assert.strictEqual($pager.find('.dx-pages').length, 0, 'pager is not rendered'); }); @@ -167,7 +169,7 @@ function() { QUnit.test('Get pages when pages count more maxPagesCount', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 10, pageCount: 13 }); + const $pager = $('#container').dxPager({ maxPagesCount: 10, pageCount: 13, itemCount: 65 }); const instance = $pager.dxPager('instance'); instance._render(); @@ -176,7 +178,7 @@ function() { }); QUnit.test('Get pages when pages count more maxPagesCount and more page exists', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 10, pageCount: 13, hasKnownLastPage: false }); + const $pager = $('#container').dxPager({ maxPagesCount: 10, pageCount: 13, itemCount: 65, hasKnownLastPage: false }); const instance = $pager.dxPager('instance'); instance._render(); @@ -186,30 +188,30 @@ function() { // B232538 QUnit.test('Get pages when pages count more maxPagesCount after pages count is changed', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 10, pageCount: 1 }); + const $pager = $('#container').dxPager({ maxPagesCount: 10, pageCount: 1, itemCount: 5 }); const instance = $pager.dxPager('instance'); - instance.option('pageCount', 13); + instance.option('itemCount', 65); assert.ok(this.checkPages($pager, [1, 2, 3, 4, 5, 13], '1'), 'pages'); }); QUnit.test('Get pages when more page does not exist after changed', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 10, pageCount: 13, hasKnownLastPage: false }); + const $pager = $('#container').dxPager({ maxPagesCount: 10, pageCount: 13, itemCount: 65, hasKnownLastPage: false }); const instance = $pager.dxPager('instance'); - instance.option({ pageCount: 14, hasKnownLastPage: true }); + instance.option({ pageCount: 14, itemCount: 70, hasKnownLastPage: true }); assert.ok(this.checkPages($pager, [1, 2, 3, 4, 5, 14], '1'), 'pages'); }); QUnit.test('Get pages when pages count less maxPagesCount', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 10, pageCount: 7 }); + const $pager = $('#container').dxPager({ maxPagesCount: 10, pageCount: 7, itemCount: 35, }); assert.ok(this.checkPages($pager, [1, 2, 3, 4, 5, 6, 7], '1'), 'pages'); }); QUnit.test('SelectPageByValue', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 10, pageCount: 13 }); + const $pager = $('#container').dxPager({ maxPagesCount: 10, pageCount: 13, itemCount: 65 }); const instance = $pager.dxPager('instance'); // assert @@ -254,7 +256,7 @@ function() { QUnit.test('Render pages without separator', function(assert) { const testElement = $('#container'); - testElement.dxPager({ maxPagesCount: 7, pageCount: 5 }); + testElement.dxPager({ maxPagesCount: 7, pageCount: 5, itemCount: 25 }); const pagesElement = getPagesElement(testElement); assert.equal(pagesElement.length, 5, 'pages elements count'); @@ -267,7 +269,7 @@ function() { QUnit.test('Render pages with separator', function(assert) { const testElement = $('#container'); - testElement.dxPager({ maxPagesCount: 7, pageCount: 8 }); + testElement.dxPager({ maxPagesCount: 7, pageCount: 8, itemCount: 40 }); const pagesElement = getPagesElement(testElement); assert.equal(pagesElement.length, 7, 'pages elements count'); @@ -282,7 +284,7 @@ function() { QUnit.test('Select page after click', function(assert) { const testElement = $('#container'); - const $pager = testElement.dxPager({ maxPagesCount: 7, pageCount: 8 }); + const $pager = testElement.dxPager({ maxPagesCount: 7, pageCount: 8, itemCount: 40 }); $(getPagesElement(testElement)[4]).trigger('dxclick'); const pagesElement = getPagesElement(testElement); @@ -299,7 +301,7 @@ function() { QUnit.test('Select page after pointer up', function(assert) { const testElement = $('#container'); - const $pager = testElement.dxPager({ maxPagesCount: 7, pageCount: 8 }); + const $pager = testElement.dxPager({ maxPagesCount: 7, pageCount: 8, itemCount: 40 }); let pagesElement = getPagesElement(testElement); @@ -359,7 +361,7 @@ function() { QUnit.test('Change pages count', function(assert) { const testElement = $('#container'); - const $pager = testElement.dxPager({ maxPagesCount: 7, pageCount: 8 }); + const $pager = testElement.dxPager({ maxPagesCount: 7, pageCount: 8, itemCount: 40 }); const instance = $pager.dxPager('instance'); let pagesElement; @@ -378,7 +380,7 @@ function() { assert.equal(getText(pagesElement[6]), '. . .', 'separator'); assert.equal(getText(pagesElement[7]), '8', 'last page'); - instance.option('pageCount', 9); + instance.option('itemCount', 45); pagesElement = getPagesElement(testElement); assert.equal(instance.option('pageIndex'), '5', 'selected page'); @@ -393,26 +395,27 @@ function() { assert.equal(getText(pagesElement[7]), '9', 'last page'); }); - QUnit.test('render pager on changed event', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 0 }); + // TODO: Contradict with a grid behavior. When there is no records it shows a pager with one page + QUnit.test.skip('render pager on changed event', function(assert) { + const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 0, itemCount: 0 }); const instance = $pager.dxPager('instance'); assert.strictEqual($('.dx-pages').length, 0); - instance.option('pageCount', 10); + instance.option('itemCount', 50); assert.strictEqual($('.dx-pages').length, 1); }); QUnit.test('Pager is not displayed when visible is false', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, pageSizes: [5, 10, 20], visible: false }); + const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], visible: false }); assert.strictEqual($('.' + 'dx-pager').length, 1, 'pager is rendered'); assert.equal($pager.css('display'), 'none', 'pager is hidden'); }); QUnit.test('Page sizes render', function(assert) { - $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, pageIndex: 1, pageSizes: [5, 10, 20] }); + $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, pageIndex: 1, allowedPageSizes: [5, 10, 20] }); const pageSizesElements = $('.dx-page-size'); assert.equal(pageSizesElements.length, 3, 'page size elements count'); @@ -422,14 +425,14 @@ function() { }); // if(!isRenovation) { QUnit.test('Page sizes render when pageSizes is empty', function(assert) { - $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, pageIndex: 1, pageSizes: [] }); + $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, pageIndex: 1, allowedPageSizes: [] }); const pageSizesElements = $('.dx-page-size'); assert.equal(pageSizesElements.length, 0, 'page size elements count'); }); QUnit.test('Page sizes render when showPageSizes is false', function(assert) { - $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, pageIndex: 1, showPageSizes: false, pageSizes: [5, 10, 20] }); + $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, pageIndex: 1, showPageSizes: false, allowedPageSizes: [5, 10, 20] }); const pageSizesElements = $('.dx-page-size'); const pageSizesContainer = $('.dx-page-sizes'); @@ -439,7 +442,7 @@ function() { }); QUnit.test('Page size selection by click', function(assert) { - $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, pageIndex: 1, pageSizes: [5, 10, 20] }); + $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, pageIndex: 1, allowedPageSizes: [5, 10, 20] }); let pageSizesElements = $('.dx-page-size'); let selectionPageSizesElements; @@ -473,7 +476,7 @@ function() { maxPagesCount: 8, pagesCount: 10, pageIndex: 1, - pageSizes: [5, 10, 20], + allowedPageSizes: [5, 10, 20], pageSizeChanged: function() { pageSizeChanged = true; } @@ -497,7 +500,7 @@ function() { maxPagesCount: 8, pagesCount: 10, pageIndex: 1, - pageSizes: [5, 10, 20], + allowedPageSizes: [5, 10, 20], pageSizeChanged: function() { pageSizeChanged = true; } @@ -513,7 +516,7 @@ function() { }); QUnit.test('Correct selected page when page index is not contains in the pages', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 25, pageIndex: 1, pageSizes: [5, 10, 20] }); + const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 25, itemCount: 125, pageIndex: 1, allowedPageSizes: [5, 10, 20] }); const instance = $pager.dxPager('instance'); instance.option('pageIndex', 16); @@ -540,11 +543,11 @@ function() { }); QUnit.test('Refresh pages after page size is changed_B233925', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 15, pageIndex: 1, pageSizes: [5, 10, 20] }); + const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 15, itemCount: 75, pageIndex: 1, allowedPageSizes: [5, 10, 20] }); const instance = $pager.dxPager('instance'); + instance.option('itemCount', 65); instance.option('pageIndex', 13); - instance.option('pageCount', 13); const pagesElement = getPagesElement($('#container')); assert.equal(getText(pagesElement[0]), '1', '1 page value'); @@ -560,7 +563,7 @@ function() { QUnit.test('Pager has negative pages when pages count is changed', function(assert) { const $pager = $('#container').dxPager({ maxPagesCount: 8, - pageCount: 1, + itemCount: 5, pageIndex: 1, visible: false, hasKnownLastPage: false @@ -569,12 +572,12 @@ function() { instance.option({ hasKnownLastPage: true, - pageCount: 1 + itemCount: 5 }); instance.option({ visible: true, - pageCount: 25 + itemCount: 125 }); const pagesElement = getPagesElement($('#container')); @@ -587,17 +590,16 @@ function() { // T966318 QUnit.test('Pager does not display duplicated page numbers', function(assert) { const $pager = $('#container').dxPager({ - pageSizes: [10, 20, 50], + allowedPageSizes: [10, 20, 50], pageSize: 50, + itemCount: 100000, pageCount: 2000, }); const instance = $pager.dxPager('instance'); instance.option('pageIndex', 1999); - instance.option('pageCount', 10000); instance.option('pageSize', 10); - instance.option('pageCount', 2000); instance.option('pageSize', 50); const pagesElement = getPagesElement($('#container')); @@ -609,7 +611,7 @@ function() { }); QUnit.test('Selected page is not reset_B237051', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 15, pageIndex: 1 }); + const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 15, itemCount: 75, pageIndex: 1 }); const instance = $pager.dxPager('instance'); instance.option('pageCount', 1); @@ -626,7 +628,7 @@ function() { assert.equal(getText(pagesElement[6]), 15, '6 page value'); }); - // B239176 + // B239176; QUnit.test('Click separator page_B239176', function(assert) { const $pager = $('#container').dxPager({ maxPagesCount: 7, pageCount: 8 }); const instance = $pager.dxPager('instance'); @@ -649,7 +651,7 @@ function() { // B239176 QUnit.test('Click page size parent container_B239176', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, pageSizes: [5, 10, 20], pageSize: 10 }); const instance = $pager.dxPager('instance'); + const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], pageSize: 10 }); const instance = $pager.dxPager('instance'); $('.dx-page-sizes').first().trigger('dxclick'); @@ -658,7 +660,7 @@ function() { }); QUnit.test('Show navigate buttons', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, pageSizes: [5, 10, 20], showNavigationButtons: true }); + const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], showNavigationButtons: true }); assert.equal($pager.find('.dx-navigate-button').length, 2, 'navigate buttons count'); assert.equal($pager.find('.dx-prev-button').length, 1, 'prev button'); @@ -666,7 +668,7 @@ function() { }); QUnit.test('Next page index via navigate button', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, pageSizes: [5, 10, 20], showNavigationButtons: true }); + const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, itemCount: 50, allowedPageSizes: [5, 10, 20], showNavigationButtons: true }); const instance = $pager.dxPager('instance'); let $button = $('.dx-next-button'); @@ -685,7 +687,7 @@ function() { }); QUnit.test('Focus selected page', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, pageSizes: [5, 10, 20], showNavigationButtons: true }); + const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], showNavigationButtons: true }); const $pages = $pager.find('.dx-pages .dx-page'); for(let i = 0; i < $pages.length; ++i) { @@ -694,7 +696,7 @@ function() { }); QUnit.test('Back page index via navigate button', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, pageSizes: [5, 10, 20], showNavigationButtons: true }); + const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, itemCount: 50, allowedPageSizes: [5, 10, 20], showNavigationButtons: true }); const instance = $pager.dxPager('instance'); instance.option('pageIndex', 8); @@ -722,7 +724,8 @@ function() { const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [5, 10, 20], + itemCount: 50, + allowedPageSizes: [5, 10, 20], showNavigationButtons: true, }); @@ -744,7 +747,7 @@ function() { // T804551 QUnit.test('Pointer up and click on page button', function(assert) { - const $pager = $('#container').dxPager({ pageCount: 20 }); + const $pager = $('#container').dxPager({ pageCount: 20, itemCount: 100 }); const instance = $pager.dxPager('instance'); @@ -755,7 +758,7 @@ function() { }); QUnit.test('Prev button is disabled when first page is chosen ', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, pageSizes: [5, 10, 20], showNavigationButtons: true }); + const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], showNavigationButtons: true }); let isPageChanged; const $button = $('.dx-prev-button'); const instance = $pager.dxPager('instance'); @@ -771,7 +774,7 @@ function() { }); QUnit.test('Next button is disabled when first page is chosen ', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, pageSizes: [5, 10, 20], showNavigationButtons: true }); + const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], showNavigationButtons: true }); let isPageChanged; const instance = $pager.dxPager('instance'); @@ -791,7 +794,7 @@ function() { $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [5, 10, 20], + allowedPageSizes: [5, 10, 20], showNavigationButtons: true, rtlEnabled: true }); @@ -807,7 +810,7 @@ function() { const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [5, 10, 20], + allowedPageSizes: [5, 10, 20], showNavigationButtons: true, rtlEnabled: true }); @@ -826,9 +829,10 @@ function() { const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, + itemCount: 50, pageIndex: 1, pageSize: 5, - pageSizes: [5, 10, 20] + allowedPageSizes: [5, 10, 20] }); const pager = $pager.dxPager('instance'); @@ -836,12 +840,12 @@ function() { assert.equal($pages[0].style.visibility, '', 'default visibility'); - pager.option('pageCount', 1); + pager.option('itemCount', 5); $pages = $('.dx-pages'); assert.equal($pages[0].style.visibility, 'hidden', 'visibility when pages count equal one'); - pager.option('pageCount', 8); + pager.option('itemCount', 40); $pages = $('.dx-pages'); assert.equal($pages[0].style.visibility, '', 'visibility when pages count equal 8'); @@ -849,34 +853,34 @@ function() { QUnit.test('Pager Info', function(assert) { $('#container').dxPager({ - maxPagesCount: 8, pageCount: 10, pageSizes: [5, 10, 20], showInfo: true, itemCount: 86, + maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], showInfo: true, itemCount: 46, infoText: 'Page {0} of {1} ({2} items)' }); const $info = $('.dx-info'); assert.equal($info.length, 1, 'info'); - assert.equal($info.text(), 'Page 1 of 10 (86 items)', 'info text'); + assert.equal($info.text(), 'Page 1 of 10 (46 items)', 'info text'); }); QUnit.test('Page info text is changed when itemCount is changed', function(assert) { const $pager = $('#container').dxPager({ - maxPagesCount: 8, pageCount: 10, pageSizes: [5, 10, 20], showInfo: true, itemCount: 86, + maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], showInfo: true, itemCount: 46, infoText: 'Page {0} of {1} ({2} items)' }); const instance = $pager.dxPager('instance'); instance.option('itemCount', 89); - assert.equal($('.dx-info').text(), 'Page 1 of 10 (89 items)'); + assert.equal($('.dx-info').text(), 'Page 1 of 18 (89 items)'); }); QUnit.test('Light mode', function(assert) { const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [5, 10, 20], + allowedPageSizes: [5, 10, 20], showInfo: true, - itemCount: 86, + itemCount: 46, infoText: 'Page {0} of {1} ({2} items)', pagesCountText: 'of' }); @@ -898,10 +902,10 @@ function() { const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [5, 10, 20], + allowedPageSizes: [5, 10, 20], showInfo: false, showPageSizes: false, - itemCount: 86, + itemCount: 46, pagesCountText: 'of' }); const $pageSizeChooser = $pager.find('.dx-page-sizes').children().first(); @@ -922,7 +926,8 @@ function() { $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ maxPagesCount: 8, pageCount: 110, - pageSizes: [5, 10, 20], + itemCount: 550, + allowedPageSizes: [5, 10, 20], showPageSizes: false, pagesCountText: 'of' }); @@ -939,10 +944,10 @@ function() { const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [5, 10, 20], + allowedPageSizes: [5, 10, 20], pageSize: 10, showInfo: true, - itemCount: 86, + itemCount: 96, infoText: 'Page {0} of {1} ({2} items)', pagesCountText: 'of', showNavigationButtons: true @@ -967,7 +972,7 @@ function() { .dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [5, 10, 20], + allowedPageSizes: [5, 10, 20], pageSize: 10, itemCount: 86, pagesCountText: 'of' @@ -987,7 +992,7 @@ function() { const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [5, 10, 20], + allowedPageSizes: [5, 10, 20], pageSize: 10, itemCount: 86, pagesCountText: 'of' @@ -998,7 +1003,7 @@ function() { assert.equal(selectBox.option('width'), Number($('.dx-page-sizes').css('min-width').replace('px', '')) + 20); - pager.option('pageSizes', [5, 10, 1010]); + pager.option('allowedPageSizes', [5, 10, 1010]); assert.equal(selectBox.option('width'), Number($('.dx-page-sizes').css('min-width').replace('px', '')) + 40); }); @@ -1009,7 +1014,7 @@ function() { const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [5, 10, 20], + allowedPageSizes: [5, 10, 20], pageSize: 5, itemCount: 86, pagesCountText: 'of', @@ -1030,7 +1035,7 @@ function() { const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [7, 10, 13, 25], + allowedPageSizes: [7, 10, 13, 25], pageSize: 10, itemCount: 86, pagesCountText: 'of' @@ -1048,13 +1053,13 @@ function() { const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [7, 10, 13, 25], + allowedPageSizes: [7, 10, 13, 25], pageSize: 10, itemCount: 86, pagesCountText: 'of' }); - $pager.dxPager('instance').option('pageSizes', [13, 45, 67]); + $pager.dxPager('instance').option('allowedPageSizes', [13, 45, 67]); const $pageSizeChooser = $pager.find('.dx-page-sizes').children().first(); const selectBox = $pageSizeChooser.dxSelectBox('instance'); @@ -1069,21 +1074,21 @@ function() { const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ maxPagesCount: 8, pageCount: 10, - itemCount: 86, + itemCount: 46, pageIndex: 73, pagesCountText: 'of' }); const $pageIndex = $pager.find('.dx-page-index'); const numberBox = $pageIndex.dxNumberBox('instance'); - assert.equal(numberBox.option('value'), 73); + assert.equal(numberBox.option('value'), 10); }); QUnit.test('Light mode. Check page index width', function(assert) { const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ maxPagesCount: 8, pageCount: 10, - itemCount: 86, + itemCount: 46, pageIndex: 73, pagesCountText: 'of' }); @@ -1093,7 +1098,7 @@ function() { assert.equal(numberBox.option('width'), Number($('.dx-page-index').css('min-width').replace('px', '')) + 20); - pager.option('pageCount', 2070); + pager.option('itemCount', 10350); assert.equal(numberBox.option('width'), Number($('.dx-page-index').css('min-width').replace('px', '')) + 40); }); @@ -1104,7 +1109,7 @@ function() { const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [5, 10, 20], + allowedPageSizes: [5, 10, 20], pageSize: 5, itemCount: 86, pagesCountText: 'of', @@ -1124,9 +1129,9 @@ function() { const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [5, 10, 20], + allowedPageSizes: [5, 10, 20], pageSize: 5, - itemCount: 86, + itemCount: 46, pagesCountText: 'of' }); const $pageIndex = $pager.find('.dx-page-index'); @@ -1134,7 +1139,7 @@ function() { $pager.dxPager('instance').option('pageIndex', 79); - assert.equal(numberBox.option('value'), 79); + assert.equal(numberBox.option('value'), 10); }); QUnit.test('Light mode. Change page index via the navigation buttons', function(assert) { @@ -1142,7 +1147,7 @@ function() { $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [5, 10, 20], + allowedPageSizes: [5, 10, 20], pageSize: 5, itemCount: 86, pagesCountText: 'of', @@ -1167,10 +1172,10 @@ function() { const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [5, 10, 20], + allowedPageSizes: [5, 10, 20], pageIndex: 2, pageSize: 5, - itemCount: 86, + itemCount: 46, pagesCountText: 'of', pageIndexChanged: function(value) { pageIndex = value; @@ -1198,7 +1203,7 @@ function() { const $pager = $('#container').width(1000).dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [5, 10, 20], + allowedPageSizes: [5, 10, 20], showInfo: true, itemCount: 86, infoText: 'Page {0} of {1} ({2} items)', @@ -1219,7 +1224,7 @@ function() { const $pager = $('#container').width(1000).dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [5, 10, 20], + allowedPageSizes: [5, 10, 20], showInfo: true, itemCount: 86, infoText: 'Page {0} of {1} ({2} items)', @@ -1246,7 +1251,7 @@ function() { const $pager = $('#container').width(1000).dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [5, 10, 20], + allowedPageSizes: [5, 10, 20], showInfo: true, itemCount: 200, infoText: 'Page {0} of {1} ({2} items)', @@ -1274,7 +1279,7 @@ function() { const $pager = $('#container').width(100).dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [5, 10, 20], + allowedPageSizes: [5, 10, 20], showInfo: true, itemCount: 86, infoText: 'Page {0} of {1} ({2} items)', @@ -1287,11 +1292,11 @@ function() { }); QUnit.test('Pager is rendered in a normal view after light mode when pageCount is changed', function(assert) { - const $pager = $('#container').width(460).dxPager({ + const $pager = $('#container').width(360).dxPager({ maxPagesCount: 10, pageCount: 5, pageSize: 8, - pageSizes: [5, 8, 15, 30], + allowedPageSizes: [5, 8, 15, 30], showInfo: true, itemCount: 40, infoText: 'Page {0} of {1} ({2} items)', @@ -1300,8 +1305,8 @@ function() { }); const pager = $pager.dxPager('instance'); - pager.option({ pageCount: 10, pageIndexChanged: commonUtils.noop }); - pager.option({ pageCount: 5, pageIndexChanged: commonUtils.noop }); + pager.option({ itemCount: 400, pageIndexChanged: commonUtils.noop }); + pager.option({ itemCount: 40, pageIndexChanged: commonUtils.noop }); assert.strictEqual(isLightMode(pager), true, 'pager is displayed in the light mode for pager'); }); @@ -1310,7 +1315,7 @@ function() { const $pager = $('#container').width(1000).dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [5, 10, 20], + allowedPageSizes: [5, 10, 20], showInfo: true, itemCount: 86, infoText: 'Page {0} of {1} ({2} items)', @@ -1351,7 +1356,7 @@ function() { const $pager = $('#container').width(100).dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [5, 10, 20], + allowedPageSizes: [5, 10, 20], showInfo: true, itemCount: 86, infoText: 'Page {0} of {1} ({2} items)', @@ -1372,7 +1377,7 @@ function() { const $pager = $('#container').width(100).dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [5, 10, 20], + allowedPageSizes: [5, 10, 20], showInfo: true, itemCount: 86, infoText: 'Page {0} of {1} ({2} items)', @@ -1415,7 +1420,7 @@ function() { const $pager = $('#container').width(1000).dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [5, 10, 20], + allowedPageSizes: [5, 10, 20], showInfo: true, itemCount: 86, infoText: 'Page {0} of {1} ({2} items)', @@ -1434,7 +1439,7 @@ function() { const $pager = $('#container').width(1000).dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [5, 10, 20], + allowedPageSizes: [5, 10, 20], showInfo: true, itemCount: 86, infoText: 'Page {0} of {1} ({2} items)', @@ -1463,7 +1468,7 @@ function() { const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [5, 10, 20], + allowedPageSizes: [5, 10, 20], showNavigationButtons: true, pagesCountText: 'of', lightModeEnabled: true @@ -1487,7 +1492,7 @@ function() { const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [5, 10, 20], + allowedPageSizes: [5, 10, 20], showNavigationButtons: true, pageIndex: 10, pagesCountText: 'of', @@ -1512,7 +1517,8 @@ function() { const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [5, 10, 20], + itemCount: 50, + allowedPageSizes: [5, 10, 20], showNavigationButtons: true, rtlEnabled: true, }); @@ -1537,7 +1543,7 @@ function() { const pagerElement = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, - pageSizes: [5, 10, 20], + allowedPageSizes: [5, 10, 20], showNavigationButtons: true, rtlEnabled: true }); @@ -1547,18 +1553,18 @@ function() { let ltrTestSample = {}; rtlTestSample = { - pageSizes: pagerElement.find('.dx-page-size').text(), + allowedPageSizes: pagerElement.find('.dx-page-size').text(), pages: [...getPagesElement(pagerElement).map((i, j) => $(j).text())], }; pagerInstance.option('rtlEnabled', false); ltrTestSample = { - pageSizes: pagerElement.find('.dx-page-size').text(), + allowedPageSizes: pagerElement.find('.dx-page-size').text(), pages: [...getPagesElement(pagerElement).map((i, j) => $(j).text())], }; - assert.equal(rtlTestSample.pageSizes, ltrTestSample.pageSizes, 'check that page sizes in LTR are equal to page sizes in RTL'); + assert.equal(rtlTestSample.allowedPageSizes, ltrTestSample.allowedPageSizes, 'check that page sizes in LTR are equal to page sizes in RTL'); assert.deepEqual(rtlTestSample.pages, ltrTestSample.pages.reverse(), 'check that pages in LTR are equal to reversed pages in RTL'); }); @@ -1584,7 +1590,7 @@ function() { localization.locale('en'); const pagerElement = $('#container').dxPager({ - pageSizes: ['all'], + allowedPageSizes: ['all'], showNavigationButtons: true, showInfo: true }); diff --git a/packages/devextreme/ts/dx.all.d.ts b/packages/devextreme/ts/dx.all.d.ts index 361707aef97b..0eb7e3639746 100644 --- a/packages/devextreme/ts/dx.all.d.ts +++ b/packages/devextreme/ts/dx.all.d.ts @@ -839,6 +839,7 @@ declare module DevExpress { previousValue: unknown ): void; _createElement(element: HTMLElement): void; + _validateOptions(options: TProperties): TProperties; } module DOMComponent { /** @@ -4256,19 +4257,18 @@ declare module DevExpress.common.grids { * [descr:Pager] */ export type Pager = DevExpress.ui.BasePagerOptions & { + /** + * [descr:Pager.allowedPageSizes] + */ + allowedPageSizes?: + | Array + | Mode; + /** * [descr:Pager.visible] */ visible?: boolean | Mode; }; - /** - * [descr:PagerDisplayMode] - */ - export type PagerDisplayMode = DevExpress.ui.dxPager.PagerDisplayMode; - /** - * [descr:PagerPageSize] - */ - export type PagerPageSize = DevExpress.ui.dxPager.PagerPageSize; /** * [descr:PagingBase] * @deprecated Attention! This type is for internal purposes only. If you used it previously, please submit a ticket to our {@link https://supportcenter.devexpress.com/ticket/create Support Center}. We will check if there is an alternative solution. @@ -7930,6 +7930,13 @@ declare module DevExpress.ui { * [descr:BasePagerOptions.label] */ label?: string; + + /** + * [descr:BasePagerOptions.allowedPageSizes] + */ + allowedPageSizes?: + | Array + | 'auto'; }; /** * [descr:ColCountResponsible] @@ -30968,7 +30975,7 @@ declare module DevExpress.ui.dxOverlay { declare module DevExpress.ui.dxPager { export type PagerAllPagesMode = 'all'; export type PagerDisplayMode = 'adaptive' | 'compact' | 'full'; - export type PagerPageSize = PagerAllPagesMode & 'auto'; + export type PagerPageSize = 'all' | 'auto'; } declare module DevExpress.ui.dxPivotGrid { export type Cell = dxPivotGridPivotGridCell; From 16b19d5da4d4a94ba1c12d0946ac0723c4491453 Mon Sep 17 00:00:00 2001 From: alexlavrov Date: Tue, 24 Sep 2024 13:18:46 +0400 Subject: [PATCH 14/38] Use common namespace in common.d.ts --- packages/devextreme/js/common.d.ts | 14 ++++++++++---- 1 file changed, 10 insertions(+), 4 deletions(-) diff --git a/packages/devextreme/js/common.d.ts b/packages/devextreme/js/common.d.ts index b23ccfc11090..17a08cd9402a 100644 --- a/packages/devextreme/js/common.d.ts +++ b/packages/devextreme/js/common.d.ts @@ -840,55 +840,61 @@ export type VerticalEdge = 'bottom' | 'top'; /** * @public - * @namespace DevExpress.ui.dxPager + * @namespace DevExpress.common */ export type PagerDisplayMode = 'adaptive' | 'compact' | 'full'; /** * @public - * @namespace DevExpress.ui.dxPager + * @namespace DevExpress.common */ export type PagerAllPagesMode = 'all'; /** * @public - * @namespace DevExpress.ui.dxPager + * @namespace DevExpress.common */ export type PagerPageSize = 'all' | 'auto'; /** * @docid * @public - * @namespace DevExpress.ui + * @namespace DevExpress.common */ export type BasePagerOptions = { /** * @docid + * @public * @default "adaptive" */ displayMode?: PagerDisplayMode; /** * @docid + * @public * @default "Page {0} of {1} ({2} items)" */ infoText?: string; /** * @docid + * @public * @default false */ showInfo?: boolean; /** * @docid + * @public * @default false */ showNavigationButtons?: boolean; /** * @docid + * @public * @default false */ showPageSizeSelector?: boolean; /** * @docid + * @public * @default "Page Navigation" */ label?: string; From cd5dda9eb631b4939d0a49fb64a00eaf2f9a143c Mon Sep 17 00:00:00 2001 From: alexlavrov Date: Tue, 24 Sep 2024 18:09:34 +0400 Subject: [PATCH 15/38] Add WA for base options --- .../devextreme-angular/src/ui/pager/index.ts | 128 +++++++++++++++++- packages/devextreme-vue/src/pager.ts | 18 +++ packages/devextreme/js/ui/pager.d.ts | 3 +- 3 files changed, 147 insertions(+), 2 deletions(-) diff --git a/packages/devextreme-angular/src/ui/pager/index.ts b/packages/devextreme-angular/src/ui/pager/index.ts index 98be3c235aaf..b1baaddfb64f 100644 --- a/packages/devextreme-angular/src/ui/pager/index.ts +++ b/packages/devextreme-angular/src/ui/pager/index.ts @@ -20,7 +20,7 @@ import { } from '@angular/core'; -import { PagerAllPagesMode } from 'devextreme/common'; +import { PagerAllPagesMode, PagerDisplayMode } from 'devextreme/common'; import DxPager from 'devextreme/ui/pager'; @@ -109,6 +109,19 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange } + /** + * [descr:BasePagerOptions.displayMode] + + */ + @Input() + get displayMode(): PagerDisplayMode { + return this._getOption('displayMode'); + } + set displayMode(value: PagerDisplayMode) { + this._setOption('displayMode', value); + } + + /** * [descr:DOMComponentOptions.elementAttr] @@ -174,6 +187,19 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange } + /** + * [descr:BasePagerOptions.infoText] + + */ + @Input() + get infoText(): string { + return this._getOption('infoText'); + } + set infoText(value: string) { + this._setOption('infoText', value); + } + + /** * [descr:dxPagerOptions.itemCount] @@ -187,6 +213,19 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange } + /** + * [descr:BasePagerOptions.label] + + */ + @Input() + get label(): string { + return this._getOption('label'); + } + set label(value: string) { + this._setOption('label', value); + } + + /** * [descr:dxPagerOptions.pageIndex] @@ -226,6 +265,45 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange } + /** + * [descr:BasePagerOptions.showInfo] + + */ + @Input() + get showInfo(): boolean { + return this._getOption('showInfo'); + } + set showInfo(value: boolean) { + this._setOption('showInfo', value); + } + + + /** + * [descr:BasePagerOptions.showNavigationButtons] + + */ + @Input() + get showNavigationButtons(): boolean { + return this._getOption('showNavigationButtons'); + } + set showNavigationButtons(value: boolean) { + this._setOption('showNavigationButtons', value); + } + + + /** + * [descr:BasePagerOptions.showPageSizeSelector] + + */ + @Input() + get showPageSizeSelector(): boolean { + return this._getOption('showPageSizeSelector'); + } + set showPageSizeSelector(value: boolean) { + this._setOption('showPageSizeSelector', value); + } + + /** * [descr:WidgetOptions.tabIndex] @@ -324,6 +402,13 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange */ @Output() disabledChange: EventEmitter; + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() displayModeChange: EventEmitter; + /** * This member supports the internal infrastructure and is not intended to be used directly from your code. @@ -359,6 +444,13 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange */ @Output() hoverStateEnabledChange: EventEmitter; + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() infoTextChange: EventEmitter; + /** * This member supports the internal infrastructure and is not intended to be used directly from your code. @@ -366,6 +458,13 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange */ @Output() itemCountChange: EventEmitter; + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() labelChange: EventEmitter; + /** * This member supports the internal infrastructure and is not intended to be used directly from your code. @@ -387,6 +486,27 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange */ @Output() rtlEnabledChange: EventEmitter; + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() showInfoChange: EventEmitter; + + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() showNavigationButtonsChange: EventEmitter; + + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() showPageSizeSelectorChange: EventEmitter; + /** * This member supports the internal infrastructure and is not intended to be used directly from your code. @@ -433,15 +553,21 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange { emit: 'activeStateEnabledChange' }, { emit: 'allowedPageSizesChange' }, { emit: 'disabledChange' }, + { emit: 'displayModeChange' }, { emit: 'elementAttrChange' }, { emit: 'focusStateEnabledChange' }, { emit: 'heightChange' }, { emit: 'hintChange' }, { emit: 'hoverStateEnabledChange' }, + { emit: 'infoTextChange' }, { emit: 'itemCountChange' }, + { emit: 'labelChange' }, { emit: 'pageIndexChange' }, { emit: 'pageSizeChange' }, { emit: 'rtlEnabledChange' }, + { emit: 'showInfoChange' }, + { emit: 'showNavigationButtonsChange' }, + { emit: 'showPageSizeSelectorChange' }, { emit: 'tabIndexChange' }, { emit: 'visibleChange' }, { emit: 'widthChange' } diff --git a/packages/devextreme-vue/src/pager.ts b/packages/devextreme-vue/src/pager.ts index 7f8cbe9cf504..c59e38d6af4a 100644 --- a/packages/devextreme-vue/src/pager.ts +++ b/packages/devextreme-vue/src/pager.ts @@ -6,12 +6,15 @@ type AccessibleOptions = Pick * @docid * @namespace DevExpress.ui * @public - * @inherits Widget + * @inherits Widget, BasePagerOptions + * @options dxPagerOptions */ export default class dxPager extends Widget { /** From 189f52f10e488a62214b2e341184e9687d6f01bf Mon Sep 17 00:00:00 2001 From: alexlavrov Date: Wed, 25 Sep 2024 15:49:31 +0400 Subject: [PATCH 16/38] Remove WA. Add @inherits doctag for dxPagerOptions --- packages/devextreme/js/ui/pager.d.ts | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/packages/devextreme/js/ui/pager.d.ts b/packages/devextreme/js/ui/pager.d.ts index db03e6fb7ea6..be4c8577e8ad 100644 --- a/packages/devextreme/js/ui/pager.d.ts +++ b/packages/devextreme/js/ui/pager.d.ts @@ -9,6 +9,7 @@ import { * @namespace DevExpress.ui * @public * @docid + * @inherits BasePagerOptions */ export interface dxPagerOptions extends BasePagerOptions, WidgetOptions { /** @@ -42,7 +43,7 @@ export interface dxPagerOptions extends BasePagerOptions, WidgetOptions * @docid * @namespace DevExpress.ui * @public - * @inherits Widget, BasePagerOptions + * @inherits Widget * @options dxPagerOptions */ export default class dxPager extends Widget { From 856ea8017cd46706f99116f3fd9c3e8a2ef6d31b Mon Sep 17 00:00:00 2001 From: alexlavrov Date: Wed, 25 Sep 2024 20:13:00 +0400 Subject: [PATCH 17/38] Update internal-tools to 16.0.0-beta.5. Regenerate all --- package.json | 2 +- packages/devextreme-vue/src/pager.ts | 12 +- packages/devextreme/ts/dx.all.d.ts | 88 ++-- pnpm-lock.yaml | 694 +++++++++++++-------------- 4 files changed, 383 insertions(+), 413 deletions(-) diff --git a/package.json b/package.json index 37194c52ab18..5c890154cb78 100644 --- a/package.json +++ b/package.json @@ -44,7 +44,7 @@ "axe-core": "4.10.0", "cheerio": "1.0.0-rc.10", "codelyzer": "6.0.2", - "devextreme-internal-tools": "16.0.0-beta.4", + "devextreme-internal-tools": "16.0.0-beta.5", "http-server": "14.1.1", "husky": "8.0.3", "jest": "29.7.0", diff --git a/packages/devextreme-vue/src/pager.ts b/packages/devextreme-vue/src/pager.ts index c59e38d6af4a..15c561e18ecf 100644 --- a/packages/devextreme-vue/src/pager.ts +++ b/packages/devextreme-vue/src/pager.ts @@ -1,5 +1,6 @@ import Pager, { Properties } from "devextreme/ui/pager"; -import { createComponent } from "./core/index"; +import { defineComponent } from "vue"; +import { prepareComponentConfig } from "./core/index"; type AccessibleOptions = Pick PromiseLike; }; + /** + * [descr:BasePagerOptions] + */ + export type BasePagerOptions = { + /** + * [descr:BasePagerOptions.displayMode] + */ + displayMode?: PagerDisplayMode; + /** + * [descr:BasePagerOptions.infoText] + */ + infoText?: string; + /** + * [descr:BasePagerOptions.showInfo] + */ + showInfo?: boolean; + /** + * [descr:BasePagerOptions.showNavigationButtons] + */ + showNavigationButtons?: boolean; + /** + * [descr:BasePagerOptions.showPageSizeSelector] + */ + showPageSizeSelector?: boolean; + /** + * [descr:BasePagerOptions.label] + */ + label?: string; + + /** + * [descr:BasePagerOptions.allowedPageSizes] + */ + allowedPageSizes?: Array | 'auto'; + }; export type ButtonStyle = 'text' | 'outlined' | 'contained'; export type ButtonType = 'danger' | 'default' | 'normal' | 'success'; /** @@ -1657,6 +1691,9 @@ declare module DevExpress.common { export type Orientation = 'horizontal' | 'vertical'; export type PageLoadMode = 'nextButton' | 'scrollBottom'; export type PageOrientation = 'portrait' | 'landscape'; + export type PagerAllPagesMode = 'all'; + export type PagerDisplayMode = 'adaptive' | 'compact' | 'full'; + export type PagerPageSize = 'all' | 'auto'; /** * [descr:PatternRule] */ @@ -4256,13 +4293,11 @@ declare module DevExpress.common.grids { /** * [descr:Pager] */ - export type Pager = DevExpress.ui.BasePagerOptions & { + export type Pager = BasePagerOptions & { /** * [descr:Pager.allowedPageSizes] */ - allowedPageSizes?: - | Array - | Mode; + allowedPageSizes?: Array | Mode; /** * [descr:Pager.visible] @@ -7902,42 +7937,6 @@ declare module DevExpress.ui { * [descr:dxSchedulerAppointment] */ export type Appointment = dxSchedulerAppointment; - /** - * [descr:BasePagerOptions] - */ - export type BasePagerOptions = { - /** - * [descr:BasePagerOptions.displayMode] - */ - displayMode?: DevExpress.ui.dxPager.PagerDisplayMode; - /** - * [descr:BasePagerOptions.infoText] - */ - infoText?: string; - /** - * [descr:BasePagerOptions.showInfo] - */ - showInfo?: boolean; - /** - * [descr:BasePagerOptions.showNavigationButtons] - */ - showNavigationButtons?: boolean; - /** - * [descr:BasePagerOptions.showPageSizeSelector] - */ - showPageSizeSelector?: boolean; - /** - * [descr:BasePagerOptions.label] - */ - label?: string; - - /** - * [descr:BasePagerOptions.allowedPageSizes] - */ - allowedPageSizes?: - | Array - | 'auto'; - }; /** * [descr:ColCountResponsible] * @deprecated Attention! This type is for internal purposes only. If you used it previously, please submit a ticket to our {@link https://supportcenter.devexpress.com/ticket/create Support Center}. We will check if there is an alternative solution. @@ -21749,7 +21748,7 @@ declare module DevExpress.ui { * @deprecated [depNote:dxPagerOptions] */ export interface dxPagerOptions - extends BasePagerOptions, + extends DevExpress.common.BasePagerOptions, WidgetOptions { /** * [descr:dxPagerOptions.pageIndex] @@ -21769,7 +21768,7 @@ declare module DevExpress.ui { /** * [descr:dxPagerOptions.allowedPageSizes] */ - allowedPageSizes?: Array; + allowedPageSizes?: Array; } /** * [descr:dxPivotGrid] @@ -30972,11 +30971,6 @@ declare module DevExpress.ui.dxOverlay { */ export function baseZIndex(zIndex: number): void; } -declare module DevExpress.ui.dxPager { - export type PagerAllPagesMode = 'all'; - export type PagerDisplayMode = 'adaptive' | 'compact' | 'full'; - export type PagerPageSize = 'all' | 'auto'; -} declare module DevExpress.ui.dxPivotGrid { export type Cell = dxPivotGridPivotGridCell; } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b946c2941acd..068751edaf48 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -10,13 +10,13 @@ importers: devDependencies: '@nx/devkit': specifier: 18.3.4 - version: 18.3.4(nx@19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11))) + version: 18.3.4(nx@19.4.2(@swc/core@1.4.17)) '@nx/jest': specifier: 19.4.2 - version: 19.4.2(@babel/traverse@7.24.5)(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(node-notifier@9.0.1)(nx@19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11)))(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5))(typescript@5.4.5) + version: 19.4.2(@babel/traverse@7.24.5)(@swc/core@1.4.17)(@types/node@20.12.8)(node-notifier@9.0.1)(nx@19.4.2(@swc/core@1.4.17))(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5))(typescript@5.4.5) '@nx/js': specifier: 19.4.2 - version: 19.4.2(@babel/traverse@7.24.5)(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(nx@19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11)))(typescript@5.4.5) + version: 19.4.2(@babel/traverse@7.24.5)(@swc/core@1.4.17)(@types/node@20.12.8)(nx@19.4.2(@swc/core@1.4.17))(typescript@5.4.5) '@types/jest': specifier: 29.5.12 version: 29.5.12 @@ -45,8 +45,8 @@ importers: specifier: 6.0.2 version: 6.0.2(@angular/compiler@17.3.12(@angular/core@17.3.12(rxjs@7.8.1)(zone.js@0.14.10)))(@angular/core@17.3.12(rxjs@7.8.1)(zone.js@0.14.10))(tslint@6.1.3(typescript@5.4.5)) devextreme-internal-tools: - specifier: 16.0.0-beta.4 - version: 16.0.0-beta.4 + specifier: 16.0.0-beta.5 + version: 16.0.0-beta.5 http-server: specifier: 14.1.1 version: 14.1.1 @@ -55,7 +55,7 @@ importers: version: 8.0.3 jest: specifier: 29.7.0 - version: 29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + version: 29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) jspdf-autotable: specifier: 3.8.2 version: 3.8.2(jspdf@2.5.1) @@ -64,7 +64,7 @@ importers: version: 14.0.1(enquirer@2.3.6) nx: specifier: 19.4.2 - version: 19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11)) + version: 19.4.2(@swc/core@1.4.17) nx-cloud: specifier: 19.0.0 version: 19.0.0 @@ -85,7 +85,7 @@ importers: version: 3.0.6 ts-node: specifier: 10.9.2 - version: 10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5) + version: 10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5) vue: specifier: 3.4.27 version: 3.4.27(typescript@5.4.5) @@ -143,7 +143,7 @@ importers: devDependencies: '@angular-devkit/build-angular': specifier: 17.3.8 - version: 17.3.8(jk2yexgmequjsxr5j5xieaauvq) + version: 17.3.8(pezbjxejraoui6xe564uu4u4ou) '@angular/cli': specifier: 17.3.8 version: 17.3.8(chokidar@3.6.0) @@ -164,7 +164,7 @@ importers: version: 7.0.3 ts-node: specifier: 10.9.2 - version: 10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@5.4.5) + version: 10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@5.4.5) typescript: specifier: 5.4.5 version: 5.4.5 @@ -468,7 +468,7 @@ importers: version: 1.1.4 jest: specifier: 26.6.3 - version: 26.6.3(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + version: 26.6.3(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) jest-environment-node: specifier: 26.6.2 version: 26.6.2 @@ -516,7 +516,7 @@ importers: version: 2.6.2 ts-node: specifier: 10.9.2 - version: 10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5) + version: 10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5) apps/react: dependencies: @@ -541,22 +541,22 @@ importers: version: 18.0.11 css-loader: specifier: 6.10.0 - version: 6.10.0(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4)) + version: 6.10.0(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4)) source-map-loader: specifier: 4.0.2 - version: 4.0.2(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4)) + version: 4.0.2(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4)) style-loader: specifier: 3.3.4 - version: 3.3.4(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4)) + version: 3.3.4(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4)) ts-loader: specifier: 9.5.1 - version: 9.5.1(typescript@5.4.5)(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4)) + version: 9.5.1(typescript@5.4.5)(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4)) tsconfig-paths-webpack-plugin: specifier: 4.1.0 version: 4.1.0 webpack: specifier: 5.94.0 - version: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4) + version: 5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4) webpack-cli: specifier: 5.1.4 version: 5.1.4(webpack-dev-server@4.15.1)(webpack@5.94.0) @@ -593,7 +593,7 @@ importers: version: 7.6.19(@babel/core@7.23.9)(@swc/core@1.4.17(@swc/helpers@0.5.11))(@swc/helpers@0.5.11)(encoding@0.1.13)(esbuild@0.18.20)(react-dom@18.0.0(react@18.0.0))(react@18.0.0)(type-fest@2.19.0)(typescript@4.9.5)(webpack-dev-server@4.15.1(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.18.20)))(webpack-hot-middleware@2.26.1) '@storybook/test': specifier: 7.6.19 - version: 7.6.19(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5))) + version: 7.6.19(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5))) prop-types: specifier: 15.8.1 version: 15.8.1 @@ -633,19 +633,19 @@ importers: version: 2.0.0-beta.7(vue@3.2.47) css-loader: specifier: 6.10.0 - version: 6.10.0(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4)) + version: 6.10.0(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4)) minimatch: specifier: 4.2.3 version: 4.2.3 source-map-loader: specifier: 4.0.2 - version: 4.0.2(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4)) + version: 4.0.2(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4)) style-loader: specifier: 3.3.4 - version: 3.3.4(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4)) + version: 3.3.4(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4)) ts-loader: specifier: 9.5.1 - version: 9.5.1(typescript@4.9.5)(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4)) + version: 9.5.1(typescript@4.9.5)(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4)) tsconfig-paths-webpack-plugin: specifier: 4.1.0 version: 4.1.0 @@ -654,16 +654,16 @@ importers: version: 4.9.5 url-loader: specifier: 1.1.2 - version: 1.1.2(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4)) + version: 1.1.2(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4)) vue-loader: specifier: 17.4.2 - version: 17.4.2(@vue/compiler-sfc@3.3.4)(vue@3.2.47)(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4)) + version: 17.4.2(@vue/compiler-sfc@3.3.4)(vue@3.2.47)(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4)) vue-router: specifier: 4.2.5 version: 4.2.5(vue@3.2.47) webpack: specifier: 5.94.0 - version: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4) + version: 5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4) webpack-cli: specifier: 5.1.4 version: 5.1.4(webpack-dev-server@4.15.1)(webpack@5.94.0) @@ -720,7 +720,7 @@ importers: version: 3.2.11(@types/node@20.12.8)(less@4.2.0)(sass@1.76.0)(sugarss@2.0.0)(terser@5.31.0) webpack: specifier: 5.94.0 - version: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@4.10.0) + version: 5.94.0(@swc/core@1.4.17)(webpack-cli@4.10.0) webpack-cli: specifier: 4.10.0 version: 4.10.0(webpack@5.94.0) @@ -832,25 +832,25 @@ importers: version: 7.23.9(@babel/core@7.23.9) '@devextreme-generator/angular': specifier: 3.0.12 - version: 3.0.12(egfur7fnyqervmydw5qnwg7txm) + version: 3.0.12(nt5hismqxwjxxqa6gvmdnutfx4) '@devextreme-generator/build-helpers': specifier: 3.0.12 - version: 3.0.12(y3iuedyvgiz5qwutxdu3tdlegu) + version: 3.0.12(zujeswrxzki4ydm2qs6udjfvba) '@devextreme-generator/core': specifier: 3.0.12 - version: 3.0.12(egfur7fnyqervmydw5qnwg7txm) + version: 3.0.12(nt5hismqxwjxxqa6gvmdnutfx4) '@devextreme-generator/declarations': specifier: 3.0.12 version: 3.0.12 '@devextreme-generator/inferno': specifier: 3.0.12 - version: 3.0.12(egfur7fnyqervmydw5qnwg7txm) + version: 3.0.12(nt5hismqxwjxxqa6gvmdnutfx4) '@devextreme-generator/react': specifier: 3.0.12 - version: 3.0.12(egfur7fnyqervmydw5qnwg7txm) + version: 3.0.12(nt5hismqxwjxxqa6gvmdnutfx4) '@devextreme-generator/vue': specifier: 3.0.12 - version: 3.0.12(egfur7fnyqervmydw5qnwg7txm) + version: 3.0.12(nt5hismqxwjxxqa6gvmdnutfx4) '@testcafe-community/axe': specifier: 3.5.0 version: 3.5.0(axe-core@4.10.0)(testcafe@3.6.0) @@ -937,7 +937,7 @@ importers: version: 17.1.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5))(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint-plugin-import@2.29.0(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0))(eslint@8.56.0) eslint-config-devextreme: specifier: 1.1.5 - version: 1.1.5(nknyrvff45lcpgpbhxgb55tgoq) + version: 1.1.5(jporbcrewswymof3ildto722zy) eslint-plugin-i18n: specifier: 2.3.0 version: 2.3.0 @@ -946,7 +946,7 @@ importers: version: 2.29.0(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0) eslint-plugin-jest: specifier: 27.6.0 - version: 27.6.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)))(typescript@4.9.5) + version: 27.6.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)))(typescript@4.9.5) eslint-plugin-jest-formatting: specifier: 3.1.0 version: 3.1.0(eslint@8.56.0) @@ -1174,7 +1174,7 @@ importers: version: 1.3.0 string-replace-loader: specifier: 3.1.0 - version: 3.1.0(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))) + version: 3.1.0(webpack@5.94.0(@swc/core@1.4.17)) stylelint: specifier: 15.11.0 version: 15.11.0(typescript@4.9.5) @@ -1198,13 +1198,13 @@ importers: version: 0.0.11 terser-webpack-plugin: specifier: 5.3.9 - version: 5.3.9(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))) + version: 5.3.9(@swc/core@1.4.17)(webpack@5.94.0(@swc/core@1.4.17)) through2: specifier: 2.0.5 version: 2.0.5 ts-jest: specifier: 29.1.2 - version: 29.1.2(@babel/core@7.23.9)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.23.9))(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)))(typescript@4.9.5) + version: 29.1.2(@babel/core@7.23.9)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.23.9))(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)))(typescript@4.9.5) tsc-alias: specifier: 1.8.10 version: 1.8.10 @@ -1225,10 +1225,10 @@ importers: version: 1.1.0 webpack: specifier: 5.94.0 - version: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11)) + version: 5.94.0(@swc/core@1.4.17) webpack-stream: specifier: 7.0.0 - version: 7.0.0(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))) + version: 7.0.0(webpack@5.94.0(@swc/core@1.4.17)) yaml: specifier: 2.5.0 version: 2.5.0 @@ -1341,7 +1341,7 @@ importers: version: 2.0.1(karma@6.4.4) karma-webpack: specifier: 5.0.1 - version: 5.0.1(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))) + version: 5.0.1(webpack@5.94.0(@swc/core@1.4.17)) ng-packagr: specifier: 17.3.0 version: 17.3.0(@angular/compiler-cli@17.3.12(@angular/compiler@17.3.12(@angular/core@17.3.12(rxjs@7.8.1)(zone.js@0.14.10)))(typescript@5.4.5))(tslib@2.6.3)(typescript@5.4.5) @@ -1365,7 +1365,7 @@ importers: version: 5.4.5 webpack: specifier: 5.94.0 - version: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11)) + version: 5.94.0(@swc/core@1.4.17) yargs: specifier: 17.7.2 version: 17.7.2 @@ -1381,7 +1381,7 @@ importers: version: 29.5.12 ts-jest: specifier: 29.1.3 - version: 29.1.3(@babel/core@7.24.5)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.5))(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)))(typescript@5.4.5) + version: 29.1.3(@babel/core@7.24.5)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.5))(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)))(typescript@5.4.5) packages/devextreme-react: dependencies: @@ -1418,7 +1418,7 @@ importers: version: 17.1.0(@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5))(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint-plugin-import@2.29.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0))(eslint@8.56.0) eslint-config-devextreme: specifier: 1.1.5 - version: 1.1.5(mc6mdjn3bqdch3ntqtyrrxh4zu) + version: 1.1.5(b2jhgakwtw2koupjm3wbduqzoa) gulp: specifier: 4.0.2 version: 4.0.2 @@ -1442,7 +1442,7 @@ importers: version: 18.0.0(react@18.0.0) ts-jest: specifier: 29.1.3 - version: 29.1.3(@babel/core@7.24.5)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.5))(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)))(typescript@4.9.5) + version: 29.1.3(@babel/core@7.24.5)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.5))(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)))(typescript@4.9.5) typescript: specifier: 4.9.5 version: 4.9.5 @@ -1497,7 +1497,7 @@ importers: version: 2.0.5 ts-jest: specifier: 29.1.2 - version: 29.1.2(@babel/core@7.24.5)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.5))(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)))(typescript@5.4.5) + version: 29.1.2(@babel/core@7.24.5)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.5))(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)))(typescript@5.4.5) packages/devextreme-themebuilder: dependencies: @@ -1552,7 +1552,7 @@ importers: version: 17.1.0(@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5))(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint-plugin-import@2.29.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0))(eslint@8.56.0) eslint-config-devextreme: specifier: 1.1.5 - version: 1.1.5(rzk5rjmmui3bnih6n3f6jxxxzq) + version: 1.1.5(32us5hk6ey7kygdhumlolw2goe) express: specifier: 4.20.0 version: 4.20.0 @@ -1573,10 +1573,10 @@ importers: version: 18.0.0 ts-jest: specifier: 29.1.2 - version: 29.1.2(@babel/core@7.24.5)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.5))(jest@29.7.0(@types/node@20.11.17)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@4.9.5)))(typescript@4.9.5) + version: 29.1.2(@babel/core@7.24.5)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.5))(jest@29.7.0(@types/node@20.11.17)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@4.9.5)))(typescript@4.9.5) ts-node: specifier: 10.9.2 - version: 10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@4.9.5) + version: 10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@4.9.5) typescript: specifier: 4.9.5 version: 4.9.5 @@ -1610,7 +1610,7 @@ importers: version: 17.1.0(@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5))(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint-plugin-import@2.29.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0))(eslint@8.56.0) eslint-config-devextreme: specifier: 1.1.5 - version: 1.1.5(mc6mdjn3bqdch3ntqtyrrxh4zu) + version: 1.1.5(b2jhgakwtw2koupjm3wbduqzoa) eslint-plugin-spellcheck: specifier: 0.0.20 version: 0.0.20(eslint@8.56.0) @@ -1631,7 +1631,7 @@ importers: version: 29.7.0 ts-jest: specifier: 29.1.3 - version: 29.1.3(@babel/core@7.24.5)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.5))(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)))(typescript@4.9.5) + version: 29.1.3(@babel/core@7.24.5)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.5))(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)))(typescript@4.9.5) typescript: specifier: 4.9.5 version: 4.9.5 @@ -3852,28 +3852,24 @@ packages: engines: {node: '>= 10'} cpu: [arm64] os: [linux] - libc: [glibc] '@nx/nx-linux-arm64-musl@19.4.2': resolution: {integrity: sha512-JKc3Bw84jWbOhlqXGBIH9/qz3kzTwpKfsIqtar8K8Gd5/UFJS8GLEdy0mXsnoeFrA1DuYJJ0PWxoHkAa1MYLxg==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - libc: [musl] '@nx/nx-linux-x64-gnu@19.4.2': resolution: {integrity: sha512-hyf0cDZ3rAM8WERZ/M82v1rnf6oO1X+xwYq363Qx04SufU+Knto7xHGndLNkx2i18+UtCoEr4ZhDYrIb8ZWHww==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - libc: [glibc] '@nx/nx-linux-x64-musl@19.4.2': resolution: {integrity: sha512-XbKut3RTb04FNA0diDhO/OM8DgqaWaaXhyybRocfhITxH+mPQBZPUs/NM3xeQCrzlGjwrBYxt+Y9Ep8Ftgd/MA==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - libc: [musl] '@nx/nx-win32-arm64-msvc@19.4.2': resolution: {integrity: sha512-VMOQ44KlndtAKE6JaXSQqrAdHBEqbJSJP4EKrBREn8HyVyr6LAfAG3Pj93ZPMvQC47uheisBcDwitxEY/Mhs1Q==} @@ -4138,35 +4134,30 @@ packages: engines: {node: '>= 10.0.0'} cpu: [arm] os: [linux] - libc: [glibc] '@parcel/watcher-linux-arm64-glibc@2.4.1': resolution: {integrity: sha512-BJ7mH985OADVLpbrzCLgrJ3TOpiZggE9FMblfO65PlOCdG++xJpKUJ0Aol74ZUIYfb8WsRlUdgrZxKkz3zXWYA==} engines: {node: '>= 10.0.0'} cpu: [arm64] os: [linux] - libc: [glibc] '@parcel/watcher-linux-arm64-musl@2.4.1': resolution: {integrity: sha512-p4Xb7JGq3MLgAfYhslU2SjoV9G0kI0Xry0kuxeG/41UfpjHGOhv7UoUDAz/jb1u2elbhazy4rRBL8PegPJFBhA==} engines: {node: '>= 10.0.0'} cpu: [arm64] os: [linux] - libc: [musl] '@parcel/watcher-linux-x64-glibc@2.4.1': resolution: {integrity: sha512-s9O3fByZ/2pyYDPoLM6zt92yu6P4E39a03zvO0qCHOTjxmt3GHRMLuRZEWhWLASTMSrrnVNWdVI/+pUElJBBBg==} engines: {node: '>= 10.0.0'} cpu: [x64] os: [linux] - libc: [glibc] '@parcel/watcher-linux-x64-musl@2.4.1': resolution: {integrity: sha512-L2nZTYR1myLNST0O632g0Dx9LyMNHrn6TOt76sYxWLdff3cB22/GZX2UPtJnaqQPdCRoszoY5rcOj4oMTtp5fQ==} engines: {node: '>= 10.0.0'} cpu: [x64] os: [linux] - libc: [musl] '@parcel/watcher-win32-arm64@2.4.1': resolution: {integrity: sha512-Uq2BPp5GWhrq/lcuItCHoqxjULU1QYEcyjSO5jqqOK8RNFDBQnenMMx4gAl3v8GiWa59E9+uDM7yZ6LxwUIfRg==} @@ -4644,55 +4635,46 @@ packages: resolution: {integrity: sha512-j63YtCIRAzbO+gC2L9dWXRh5BFetsv0j0va0Wi9epXDgU/XUi5dJKo4USTttVyK7fGw2nPWK0PbAvyliz50SCQ==} cpu: [arm] os: [linux] - libc: [glibc] '@rollup/rollup-linux-arm-musleabihf@4.22.4': resolution: {integrity: sha512-dJnWUgwWBX1YBRsuKKMOlXCzh2Wu1mlHzv20TpqEsfdZLb3WoJW2kIEsGwLkroYf24IrPAvOT/ZQ2OYMV6vlrg==} cpu: [arm] os: [linux] - libc: [musl] '@rollup/rollup-linux-arm64-gnu@4.22.4': resolution: {integrity: sha512-AdPRoNi3NKVLolCN/Sp4F4N1d98c4SBnHMKoLuiG6RXgoZ4sllseuGioszumnPGmPM2O7qaAX/IJdeDU8f26Aw==} cpu: [arm64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-arm64-musl@4.22.4': resolution: {integrity: sha512-Gl0AxBtDg8uoAn5CCqQDMqAx22Wx22pjDOjBdmG0VIWX3qUBHzYmOKh8KXHL4UpogfJ14G4wk16EQogF+v8hmA==} cpu: [arm64] os: [linux] - libc: [musl] '@rollup/rollup-linux-powerpc64le-gnu@4.22.4': resolution: {integrity: sha512-3aVCK9xfWW1oGQpTsYJJPF6bfpWfhbRnhdlyhak2ZiyFLDaayz0EP5j9V1RVLAAxlmWKTDfS9wyRyY3hvhPoOg==} cpu: [ppc64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-riscv64-gnu@4.22.4': resolution: {integrity: sha512-ePYIir6VYnhgv2C5Xe9u+ico4t8sZWXschR6fMgoPUK31yQu7hTEJb7bCqivHECwIClJfKgE7zYsh1qTP3WHUA==} cpu: [riscv64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-s390x-gnu@4.22.4': resolution: {integrity: sha512-GqFJ9wLlbB9daxhVlrTe61vJtEY99/xB3C8e4ULVsVfflcpmR6c8UZXjtkMA6FhNONhj2eA5Tk9uAVw5orEs4Q==} cpu: [s390x] os: [linux] - libc: [glibc] '@rollup/rollup-linux-x64-gnu@4.22.4': resolution: {integrity: sha512-87v0ol2sH9GE3cLQLNEy0K/R0pz1nvg76o8M5nhMR0+Q+BBGLnb35P0fVz4CQxHYXaAOhE8HhlkaZfsdUOlHwg==} cpu: [x64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-x64-musl@4.22.4': resolution: {integrity: sha512-UV6FZMUgePDZrFjrNGIWzDo/vABebuXBhJEqrHxrGiU6HikPy0Z3LfdtciIttEUQfuDdCn8fqh7wiFJjCNwO+g==} cpu: [x64] os: [linux] - libc: [musl] '@rollup/rollup-win32-arm64-msvc@4.22.4': resolution: {integrity: sha512-BjI+NVVEGAXjGWYHz/vv0pBqfGoUH0IGZ0cICTn7kB9PyjrATSkX+8WkguNjWoj2qSr1im/+tTGRaY+4/PdcQw==} @@ -5008,28 +4990,24 @@ packages: engines: {node: '>=10'} cpu: [arm64] os: [linux] - libc: [glibc] '@swc/core-linux-arm64-musl@1.4.17': resolution: {integrity: sha512-qhH4gr9gAlVk8MBtzXbzTP3BJyqbAfUOATGkyUtohh85fPXQYuzVlbExix3FZXTwFHNidGHY8C+ocscI7uDaYw==} engines: {node: '>=10'} cpu: [arm64] os: [linux] - libc: [musl] '@swc/core-linux-x64-gnu@1.4.17': resolution: {integrity: sha512-vRDFATL1oN5oZMImkwbgSHEkp8xG1ofEASBypze01W1Tqto8t+yo6gsp69wzCZBlxldsvPpvFZW55Jq0Rn+UnA==} engines: {node: '>=10'} cpu: [x64] os: [linux] - libc: [glibc] '@swc/core-linux-x64-musl@1.4.17': resolution: {integrity: sha512-zQNPXAXn3nmPqv54JVEN8k2JMEcMTQ6veVuU0p5O+A7KscJq+AGle/7ZQXzpXSfUCXlLMX4wvd+rwfGhh3J4cw==} engines: {node: '>=10'} cpu: [x64] os: [linux] - libc: [musl] '@swc/core-win32-arm64-msvc@1.4.17': resolution: {integrity: sha512-z86n7EhOwyzxwm+DLE5NoLkxCTme2lq7QZlDjbQyfCxOt6isWz8rkW5QowTX8w9Rdmk34ncrjSLvnHOeLY17+w==} @@ -7967,8 +7945,8 @@ packages: devextreme-cldr-data@1.0.3: resolution: {integrity: sha512-xd+uWv1KzEhr+ZH/MOWfDei3GFz+NAYyKUR9HgjM9BBwPel7PpMElYp4whM+PtAjziBaTssQnA//ob5c3BovTA==} - devextreme-internal-tools@16.0.0-beta.4: - resolution: {integrity: sha512-mvB8C85781XOj6HOWV1m5d3gj0LIyK3kaXF1JFF/pTlXZXxU5dTquS1i7PBDGwUIpu38XoHcc1Mzo3mYSj7IiA==} + devextreme-internal-tools@16.0.0-beta.5: + resolution: {integrity: sha512-9byDq+p1oelZZnufFJS6rUo4BfPiOWfPAIZogrNFfro72N9z9mENd9QrRcEvb9nlmEbuLjbjDfNkJZrxnCMAEw==} engines: {node: '>=12.0.0'} hasBin: true @@ -9451,7 +9429,7 @@ packages: resolution: {integrity: sha512-oWb1Z6mkHIskLzEJ/XWX0srkpkTQ7vaopMQkyaEIoq0fmtFVxOthb8cCxeT+p3ynTdkk/RZwbgG4brR5BeWECw==} engines: {node: '>= 4.0'} os: [darwin] - deprecated: Upgrade to fsevents v2 to mitigate potential security issues + deprecated: The v1 package contains DANGEROUS / INSECURE binaries. Upgrade to safe fsevents v2 fsevents@2.3.3: resolution: {integrity: sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==} @@ -11508,28 +11486,24 @@ packages: engines: {node: '>= 12.0.0'} cpu: [arm64] os: [linux] - libc: [glibc] lightningcss-linux-arm64-musl@1.25.1: resolution: {integrity: sha512-IhxVFJoTW8wq6yLvxdPvyHv4NjzcpN1B7gjxrY3uaykQNXPHNIpChLB52+wfH+yS58zm1PL4LemUp8u9Cfp6Bw==} engines: {node: '>= 12.0.0'} cpu: [arm64] os: [linux] - libc: [musl] lightningcss-linux-x64-gnu@1.25.1: resolution: {integrity: sha512-RXIaru79KrREPEd6WLXfKfIp4QzoppZvD3x7vuTKkDA64PwTzKJ2jaC43RZHRt8BmyIkRRlmywNhTRMbmkPYpA==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [linux] - libc: [glibc] lightningcss-linux-x64-musl@1.25.1: resolution: {integrity: sha512-TdcNqFsAENEEFr8fJWg0Y4fZ/nwuqTRsIr7W7t2wmDUlA8eSXVepeeONYcb+gtTj1RaXn/WgNLB45SFkz+XBZA==} engines: {node: '>= 12.0.0'} cpu: [x64] os: [linux] - libc: [musl] lightningcss-win32-x64-msvc@1.25.1: resolution: {integrity: sha512-9KZZkmmy9oGDSrnyHuxP6iMhbsgChUiu/NSgOx+U1I/wTngBStDf2i2aGRCHvFqj19HqqBEI4WuGVQBa2V6e0A==} @@ -16493,11 +16467,11 @@ snapshots: transitivePeerDependencies: - chokidar - '@angular-devkit/build-angular@17.3.8(jk2yexgmequjsxr5j5xieaauvq)': + '@angular-devkit/build-angular@17.3.8(pezbjxejraoui6xe564uu4u4ou)': dependencies: '@ampproject/remapping': 2.3.0 '@angular-devkit/architect': 0.1703.8(chokidar@3.6.0) - '@angular-devkit/build-webpack': 0.1703.8(chokidar@3.6.0)(webpack-dev-server@4.15.1(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)))(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)) + '@angular-devkit/build-webpack': 0.1703.8(chokidar@3.6.0)(webpack-dev-server@4.15.1(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)))(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)) '@angular-devkit/core': 17.3.8(chokidar@3.6.0) '@angular/compiler-cli': 17.3.12(@angular/compiler@17.3.12(@angular/core@17.3.12(rxjs@7.8.1)(zone.js@0.13.3)))(typescript@5.4.5) '@babel/core': 7.24.0 @@ -16510,16 +16484,16 @@ snapshots: '@babel/preset-env': 7.24.0(@babel/core@7.24.0) '@babel/runtime': 7.24.0 '@discoveryjs/json-ext': 0.5.7 - '@ngtools/webpack': 17.3.8(@angular/compiler-cli@17.3.12(@angular/compiler@17.3.12(@angular/core@17.3.12(rxjs@7.8.1)(zone.js@0.13.3)))(typescript@5.4.5))(typescript@5.4.5)(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)) + '@ngtools/webpack': 17.3.8(@angular/compiler-cli@17.3.12(@angular/compiler@17.3.12(@angular/core@17.3.12(rxjs@7.8.1)(zone.js@0.13.3)))(typescript@5.4.5))(typescript@5.4.5)(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)) '@vitejs/plugin-basic-ssl': 1.1.0(vite@5.1.7(@types/node@20.11.17)(less@4.2.0)(lightningcss@1.25.1)(sass@1.71.1)(sugarss@2.0.0)(terser@5.29.1)) ansi-colors: 4.1.3 autoprefixer: 10.4.18(postcss@8.4.35) - babel-loader: 9.1.3(@babel/core@7.24.0)(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)) + babel-loader: 9.1.3(@babel/core@7.24.0)(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)) babel-plugin-istanbul: 6.1.1 browserslist: 4.23.0 - copy-webpack-plugin: 11.0.0(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)) + copy-webpack-plugin: 11.0.0(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)) critters: 0.0.22 - css-loader: 6.10.0(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)) + css-loader: 6.10.0(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)) esbuild-wasm: 0.20.1 fast-glob: 3.3.2 http-proxy-middleware: 2.0.6(@types/express@4.17.21) @@ -16528,11 +16502,11 @@ snapshots: jsonc-parser: 3.2.1 karma-source-map-support: 1.4.0 less: 4.2.0 - less-loader: 11.1.0(less@4.2.0)(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)) - license-webpack-plugin: 4.0.2(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)) + less-loader: 11.1.0(less@4.2.0)(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)) + license-webpack-plugin: 4.0.2(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)) loader-utils: 3.2.1 magic-string: 0.30.8 - mini-css-extract-plugin: 2.8.1(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)) + mini-css-extract-plugin: 2.8.1(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)) mrmime: 2.0.0 open: 8.4.2 ora: 5.4.1 @@ -16540,13 +16514,13 @@ snapshots: picomatch: 4.0.1 piscina: 4.4.0 postcss: 8.4.35 - postcss-loader: 8.1.1(postcss@8.4.35)(typescript@5.4.5)(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)) + postcss-loader: 8.1.1(postcss@8.4.35)(typescript@5.4.5)(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)) resolve-url-loader: 5.0.0 rxjs: 7.8.1 sass: 1.71.1 - sass-loader: 14.1.1(sass-embedded@1.66.0)(sass@1.71.1)(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)) + sass-loader: 14.1.1(sass-embedded@1.66.0)(sass@1.71.1)(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)) semver: 7.6.0 - source-map-loader: 5.0.0(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)) + source-map-loader: 5.0.0(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)) source-map-support: 0.5.21 terser: 5.29.1 tree-kill: 1.2.2 @@ -16555,15 +16529,15 @@ snapshots: undici: 6.11.1 vite: 5.1.7(@types/node@20.11.17)(less@4.2.0)(lightningcss@1.25.1)(sass@1.71.1)(sugarss@2.0.0)(terser@5.29.1) watchpack: 2.4.0 - webpack: 5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1) - webpack-dev-middleware: 6.1.2(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)) - webpack-dev-server: 4.15.1(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)) + webpack: 5.90.3(@swc/core@1.4.17)(esbuild@0.20.1) + webpack-dev-middleware: 6.1.2(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)) + webpack-dev-server: 4.15.1(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)) webpack-merge: 5.10.0 - webpack-subresource-integrity: 5.1.0(html-webpack-plugin@5.6.0(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)))(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)) + webpack-subresource-integrity: 5.1.0(html-webpack-plugin@5.6.0(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)))(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)) optionalDependencies: '@angular/platform-server': 17.3.12(@angular/animations@17.3.12(@angular/core@17.3.12(rxjs@7.8.1)(zone.js@0.13.3)))(@angular/common@17.3.12(@angular/core@17.3.12(rxjs@7.8.1)(zone.js@0.13.3))(rxjs@7.8.1))(@angular/compiler@17.3.12(@angular/core@17.3.12(rxjs@7.8.1)(zone.js@0.13.3)))(@angular/core@17.3.12(rxjs@7.8.1)(zone.js@0.13.3))(@angular/platform-browser@17.3.12(@angular/animations@17.3.12(@angular/core@17.3.12(rxjs@7.8.1)(zone.js@0.13.3)))(@angular/common@17.3.12(@angular/core@17.3.12(rxjs@7.8.1)(zone.js@0.13.3))(rxjs@7.8.1))(@angular/core@17.3.12(rxjs@7.8.1)(zone.js@0.13.3))) esbuild: 0.20.1 - jest: 29.7.0(@types/node@20.11.17)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@5.4.5)) + jest: 29.7.0(@types/node@20.11.17)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@5.4.5)) jest-environment-jsdom: 29.7.0 karma: 6.4.4 ng-packagr: 17.3.0(@angular/compiler-cli@17.3.12(@angular/compiler@17.3.12(@angular/core@17.3.12(rxjs@7.8.1)(zone.js@0.13.3)))(typescript@5.4.5))(tslib@2.6.2)(typescript@5.4.5) @@ -16586,12 +16560,12 @@ snapshots: - utf-8-validate - webpack-cli - '@angular-devkit/build-webpack@0.1703.8(chokidar@3.6.0)(webpack-dev-server@4.15.1(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)))(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1))': + '@angular-devkit/build-webpack@0.1703.8(chokidar@3.6.0)(webpack-dev-server@4.15.1(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)))(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1))': dependencies: '@angular-devkit/architect': 0.1703.8(chokidar@3.6.0) rxjs: 7.8.1 - webpack: 5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1) - webpack-dev-server: 4.15.1(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)) + webpack: 5.90.3(@swc/core@1.4.17)(esbuild@0.20.1) + webpack-dev-server: 4.15.1(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)) transitivePeerDependencies: - chokidar @@ -19144,9 +19118,9 @@ snapshots: dependencies: tslib: 2.3.1 - '@devextreme-generator/angular@3.0.12(egfur7fnyqervmydw5qnwg7txm)': + '@devextreme-generator/angular@3.0.12(nt5hismqxwjxxqa6gvmdnutfx4)': dependencies: - '@devextreme-generator/core': 3.0.12(egfur7fnyqervmydw5qnwg7txm) + '@devextreme-generator/core': 3.0.12(nt5hismqxwjxxqa6gvmdnutfx4) transitivePeerDependencies: - '@typescript-eslint/eslint-plugin' - eslint @@ -19161,17 +19135,17 @@ snapshots: - eslint-plugin-spellcheck - supports-color - '@devextreme-generator/build-helpers@3.0.12(y3iuedyvgiz5qwutxdu3tdlegu)': + '@devextreme-generator/build-helpers@3.0.12(zujeswrxzki4ydm2qs6udjfvba)': dependencies: - '@devextreme-generator/angular': 3.0.12(egfur7fnyqervmydw5qnwg7txm) - '@devextreme-generator/core': 3.0.12(egfur7fnyqervmydw5qnwg7txm) - '@devextreme-generator/inferno': 3.0.12(egfur7fnyqervmydw5qnwg7txm) - '@devextreme-generator/preact': 3.0.12(egfur7fnyqervmydw5qnwg7txm) - '@devextreme-generator/react': 3.0.12(egfur7fnyqervmydw5qnwg7txm) + '@devextreme-generator/angular': 3.0.12(nt5hismqxwjxxqa6gvmdnutfx4) + '@devextreme-generator/core': 3.0.12(nt5hismqxwjxxqa6gvmdnutfx4) + '@devextreme-generator/inferno': 3.0.12(nt5hismqxwjxxqa6gvmdnutfx4) + '@devextreme-generator/preact': 3.0.12(nt5hismqxwjxxqa6gvmdnutfx4) + '@devextreme-generator/react': 3.0.12(nt5hismqxwjxxqa6gvmdnutfx4) loader-utils: 2.0.4 typescript: 4.3.5 vinyl: 2.2.1 - webpack: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11)) + webpack: 5.94.0(@swc/core@1.4.17) transitivePeerDependencies: - '@swc/core' - '@typescript-eslint/eslint-plugin' @@ -19190,10 +19164,10 @@ snapshots: - uglify-js - webpack-cli - '@devextreme-generator/core@3.0.12(egfur7fnyqervmydw5qnwg7txm)': + '@devextreme-generator/core@3.0.12(nt5hismqxwjxxqa6gvmdnutfx4)': dependencies: code-block-writer: 10.1.1 - eslint-config-devextreme: 0.2.0(egfur7fnyqervmydw5qnwg7txm) + eslint-config-devextreme: 0.2.0(nt5hismqxwjxxqa6gvmdnutfx4) prettier: 2.8.4 prettier-eslint: 13.0.0 typescript: 4.3.5 @@ -19216,11 +19190,11 @@ snapshots: react: 17.0.2 react-dom: 17.0.2(react@17.0.2) - '@devextreme-generator/inferno@3.0.12(egfur7fnyqervmydw5qnwg7txm)': + '@devextreme-generator/inferno@3.0.12(nt5hismqxwjxxqa6gvmdnutfx4)': dependencies: - '@devextreme-generator/core': 3.0.12(egfur7fnyqervmydw5qnwg7txm) - '@devextreme-generator/preact': 3.0.12(egfur7fnyqervmydw5qnwg7txm) - '@devextreme-generator/react': 3.0.12(egfur7fnyqervmydw5qnwg7txm) + '@devextreme-generator/core': 3.0.12(nt5hismqxwjxxqa6gvmdnutfx4) + '@devextreme-generator/preact': 3.0.12(nt5hismqxwjxxqa6gvmdnutfx4) + '@devextreme-generator/react': 3.0.12(nt5hismqxwjxxqa6gvmdnutfx4) transitivePeerDependencies: - '@typescript-eslint/eslint-plugin' - eslint @@ -19235,10 +19209,10 @@ snapshots: - eslint-plugin-spellcheck - supports-color - '@devextreme-generator/preact@3.0.12(egfur7fnyqervmydw5qnwg7txm)': + '@devextreme-generator/preact@3.0.12(nt5hismqxwjxxqa6gvmdnutfx4)': dependencies: - '@devextreme-generator/core': 3.0.12(egfur7fnyqervmydw5qnwg7txm) - '@devextreme-generator/react': 3.0.12(egfur7fnyqervmydw5qnwg7txm) + '@devextreme-generator/core': 3.0.12(nt5hismqxwjxxqa6gvmdnutfx4) + '@devextreme-generator/react': 3.0.12(nt5hismqxwjxxqa6gvmdnutfx4) transitivePeerDependencies: - '@typescript-eslint/eslint-plugin' - eslint @@ -19253,9 +19227,9 @@ snapshots: - eslint-plugin-spellcheck - supports-color - '@devextreme-generator/react@3.0.12(egfur7fnyqervmydw5qnwg7txm)': + '@devextreme-generator/react@3.0.12(nt5hismqxwjxxqa6gvmdnutfx4)': dependencies: - '@devextreme-generator/core': 3.0.12(egfur7fnyqervmydw5qnwg7txm) + '@devextreme-generator/core': 3.0.12(nt5hismqxwjxxqa6gvmdnutfx4) transitivePeerDependencies: - '@typescript-eslint/eslint-plugin' - eslint @@ -19270,10 +19244,10 @@ snapshots: - eslint-plugin-spellcheck - supports-color - '@devextreme-generator/vue@3.0.12(egfur7fnyqervmydw5qnwg7txm)': + '@devextreme-generator/vue@3.0.12(nt5hismqxwjxxqa6gvmdnutfx4)': dependencies: - '@devextreme-generator/angular': 3.0.12(egfur7fnyqervmydw5qnwg7txm) - '@devextreme-generator/core': 3.0.12(egfur7fnyqervmydw5qnwg7txm) + '@devextreme-generator/angular': 3.0.12(nt5hismqxwjxxqa6gvmdnutfx4) + '@devextreme-generator/core': 3.0.12(nt5hismqxwjxxqa6gvmdnutfx4) prettier: 2.8.4 transitivePeerDependencies: - '@typescript-eslint/eslint-plugin' @@ -19745,7 +19719,7 @@ snapshots: jest-util: 29.7.0 slash: 3.0.0 - '@jest/core@26.6.3(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5))': + '@jest/core@26.6.3(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5))': dependencies: '@jest/console': 26.6.2 '@jest/reporters': 26.6.2 @@ -19758,14 +19732,14 @@ snapshots: exit: 0.1.2 graceful-fs: 4.2.11 jest-changed-files: 26.6.2 - jest-config: 26.6.3(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + jest-config: 26.6.3(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) jest-haste-map: 26.6.2 jest-message-util: 26.6.2 jest-regex-util: 26.0.0 jest-resolve: 26.6.2 jest-resolve-dependencies: 26.6.3 - jest-runner: 26.6.3(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) - jest-runtime: 26.6.3(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + jest-runner: 26.6.3(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) + jest-runtime: 26.6.3(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) jest-snapshot: 26.6.2 jest-util: 26.6.2 jest-validate: 26.6.2 @@ -19782,7 +19756,7 @@ snapshots: - ts-node - utf-8-validate - '@jest/core@29.7.0(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@4.9.5))': + '@jest/core@29.7.0(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@4.9.5))': dependencies: '@jest/console': 29.7.0 '@jest/reporters': 29.7.0(node-notifier@9.0.1) @@ -19796,7 +19770,7 @@ snapshots: exit: 0.1.2 graceful-fs: 4.2.11 jest-changed-files: 29.7.0 - jest-config: 29.7.0(@types/node@20.12.8)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@4.9.5)) + jest-config: 29.7.0(@types/node@20.12.8)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@4.9.5)) jest-haste-map: 29.7.0 jest-message-util: 29.7.0 jest-regex-util: 29.6.3 @@ -19819,7 +19793,7 @@ snapshots: - supports-color - ts-node - '@jest/core@29.7.0(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@5.4.5))': + '@jest/core@29.7.0(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@5.4.5))': dependencies: '@jest/console': 29.7.0 '@jest/reporters': 29.7.0(node-notifier@9.0.1) @@ -19833,7 +19807,7 @@ snapshots: exit: 0.1.2 graceful-fs: 4.2.11 jest-changed-files: 29.7.0 - jest-config: 29.7.0(@types/node@20.12.8)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@5.4.5)) + jest-config: 29.7.0(@types/node@20.12.8)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@5.4.5)) jest-haste-map: 29.7.0 jest-message-util: 29.7.0 jest-regex-util: 29.6.3 @@ -19857,7 +19831,7 @@ snapshots: - ts-node optional: true - '@jest/core@29.7.0(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5))': + '@jest/core@29.7.0(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5))': dependencies: '@jest/console': 29.7.0 '@jest/reporters': 29.7.0(node-notifier@9.0.1) @@ -19871,7 +19845,7 @@ snapshots: exit: 0.1.2 graceful-fs: 4.2.11 jest-changed-files: 29.7.0 - jest-config: 29.7.0(@types/node@20.12.8)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + jest-config: 29.7.0(@types/node@20.12.8)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) jest-haste-map: 29.7.0 jest-message-util: 29.7.0 jest-regex-util: 29.6.3 @@ -20044,13 +20018,13 @@ snapshots: '@types/istanbul-lib-coverage': 2.0.6 collect-v8-coverage: 1.0.2 - '@jest/test-sequencer@26.6.3(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5))': + '@jest/test-sequencer@26.6.3(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5))': dependencies: '@jest/test-result': 26.6.2 graceful-fs: 4.2.11 jest-haste-map: 26.6.2 - jest-runner: 26.6.3(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) - jest-runtime: 26.6.3(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + jest-runner: 26.6.3(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) + jest-runtime: 26.6.3(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) transitivePeerDependencies: - bufferutil - canvas @@ -20227,11 +20201,11 @@ snapshots: pump: 3.0.0 tar-fs: 2.1.1 - '@ngtools/webpack@17.3.8(@angular/compiler-cli@17.3.12(@angular/compiler@17.3.12(@angular/core@17.3.12(rxjs@7.8.1)(zone.js@0.13.3)))(typescript@5.4.5))(typescript@5.4.5)(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1))': + '@ngtools/webpack@17.3.8(@angular/compiler-cli@17.3.12(@angular/compiler@17.3.12(@angular/core@17.3.12(rxjs@7.8.1)(zone.js@0.13.3)))(typescript@5.4.5))(typescript@5.4.5)(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1))': dependencies: '@angular/compiler-cli': 17.3.12(@angular/compiler@17.3.12(@angular/core@17.3.12(rxjs@7.8.1)(zone.js@0.13.3)))(typescript@5.4.5) typescript: 5.4.5 - webpack: 5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1) + webpack: 5.90.3(@swc/core@1.4.17)(esbuild@0.20.1) '@nicolo-ribaudo/eslint-scope-5-internals@5.1.1-v1': dependencies: @@ -20313,21 +20287,21 @@ snapshots: - bluebird - supports-color - '@nrwl/devkit@18.3.4(nx@19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11)))': + '@nrwl/devkit@18.3.4(nx@19.4.2(@swc/core@1.4.17))': dependencies: - '@nx/devkit': 18.3.4(nx@19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11))) + '@nx/devkit': 18.3.4(nx@19.4.2(@swc/core@1.4.17)) transitivePeerDependencies: - nx - '@nrwl/devkit@19.4.2(nx@19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11)))': + '@nrwl/devkit@19.4.2(nx@19.4.2(@swc/core@1.4.17))': dependencies: - '@nx/devkit': 19.4.2(nx@19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11))) + '@nx/devkit': 19.4.2(nx@19.4.2(@swc/core@1.4.17)) transitivePeerDependencies: - nx - '@nrwl/jest@19.4.2(@babel/traverse@7.24.5)(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(node-notifier@9.0.1)(nx@19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11)))(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5))(typescript@5.4.5)': + '@nrwl/jest@19.4.2(@babel/traverse@7.24.5)(@swc/core@1.4.17)(@types/node@20.12.8)(node-notifier@9.0.1)(nx@19.4.2(@swc/core@1.4.17))(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5))(typescript@5.4.5)': dependencies: - '@nx/jest': 19.4.2(@babel/traverse@7.24.5)(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(node-notifier@9.0.1)(nx@19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11)))(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5))(typescript@5.4.5) + '@nx/jest': 19.4.2(@babel/traverse@7.24.5)(@swc/core@1.4.17)(@types/node@20.12.8)(node-notifier@9.0.1)(nx@19.4.2(@swc/core@1.4.17))(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5))(typescript@5.4.5) transitivePeerDependencies: - '@babel/traverse' - '@swc-node/register' @@ -20343,9 +20317,9 @@ snapshots: - typescript - verdaccio - '@nrwl/js@19.4.2(@babel/traverse@7.24.5)(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(nx@19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11)))(typescript@5.4.5)': + '@nrwl/js@19.4.2(@babel/traverse@7.24.5)(@swc/core@1.4.17)(@types/node@20.12.8)(nx@19.4.2(@swc/core@1.4.17))(typescript@5.4.5)': dependencies: - '@nx/js': 19.4.2(@babel/traverse@7.24.5)(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(nx@19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11)))(typescript@5.4.5) + '@nx/js': 19.4.2(@babel/traverse@7.24.5)(@swc/core@1.4.17)(@types/node@20.12.8)(nx@19.4.2(@swc/core@1.4.17))(typescript@5.4.5) transitivePeerDependencies: - '@babel/traverse' - '@swc-node/register' @@ -20364,59 +20338,59 @@ snapshots: transitivePeerDependencies: - debug - '@nrwl/tao@19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11))': + '@nrwl/tao@19.4.2(@swc/core@1.4.17)': dependencies: - nx: 19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11)) + nx: 19.4.2(@swc/core@1.4.17) tslib: 2.6.3 transitivePeerDependencies: - '@swc-node/register' - '@swc/core' - debug - '@nrwl/workspace@19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11))': + '@nrwl/workspace@19.4.2(@swc/core@1.4.17)': dependencies: - '@nx/workspace': 19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11)) + '@nx/workspace': 19.4.2(@swc/core@1.4.17) transitivePeerDependencies: - '@swc-node/register' - '@swc/core' - debug - '@nx/devkit@18.3.4(nx@19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11)))': + '@nx/devkit@18.3.4(nx@19.4.2(@swc/core@1.4.17))': dependencies: - '@nrwl/devkit': 18.3.4(nx@19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11))) + '@nrwl/devkit': 18.3.4(nx@19.4.2(@swc/core@1.4.17)) ejs: 3.1.10 enquirer: 2.3.6 ignore: 5.3.1 - nx: 19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11)) + nx: 19.4.2(@swc/core@1.4.17) semver: 7.6.2 tmp: 0.2.3 tslib: 2.6.3 yargs-parser: 21.1.1 - '@nx/devkit@19.4.2(nx@19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11)))': + '@nx/devkit@19.4.2(nx@19.4.2(@swc/core@1.4.17))': dependencies: - '@nrwl/devkit': 19.4.2(nx@19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11))) + '@nrwl/devkit': 19.4.2(nx@19.4.2(@swc/core@1.4.17)) ejs: 3.1.10 enquirer: 2.3.6 ignore: 5.3.1 minimatch: 9.0.3 - nx: 19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11)) + nx: 19.4.2(@swc/core@1.4.17) semver: 7.6.2 tmp: 0.2.3 tslib: 2.6.3 yargs-parser: 21.1.1 - '@nx/jest@19.4.2(@babel/traverse@7.24.5)(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(node-notifier@9.0.1)(nx@19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11)))(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5))(typescript@5.4.5)': + '@nx/jest@19.4.2(@babel/traverse@7.24.5)(@swc/core@1.4.17)(@types/node@20.12.8)(node-notifier@9.0.1)(nx@19.4.2(@swc/core@1.4.17))(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5))(typescript@5.4.5)': dependencies: '@jest/reporters': 29.7.0(node-notifier@9.0.1) '@jest/test-result': 29.7.0 - '@nrwl/jest': 19.4.2(@babel/traverse@7.24.5)(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(node-notifier@9.0.1)(nx@19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11)))(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5))(typescript@5.4.5) - '@nx/devkit': 19.4.2(nx@19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11))) - '@nx/js': 19.4.2(@babel/traverse@7.24.5)(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(nx@19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11)))(typescript@5.4.5) + '@nrwl/jest': 19.4.2(@babel/traverse@7.24.5)(@swc/core@1.4.17)(@types/node@20.12.8)(node-notifier@9.0.1)(nx@19.4.2(@swc/core@1.4.17))(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5))(typescript@5.4.5) + '@nx/devkit': 19.4.2(nx@19.4.2(@swc/core@1.4.17)) + '@nx/js': 19.4.2(@babel/traverse@7.24.5)(@swc/core@1.4.17)(@types/node@20.12.8)(nx@19.4.2(@swc/core@1.4.17))(typescript@5.4.5) '@phenomnomnominal/tsquery': 5.0.1(typescript@5.4.5) chalk: 4.1.2 identity-obj-proxy: 3.0.0 - jest-config: 29.7.0(@types/node@20.12.8)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + jest-config: 29.7.0(@types/node@20.12.8)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) jest-resolve: 29.7.0 jest-util: 29.7.0 minimatch: 9.0.3 @@ -20438,7 +20412,7 @@ snapshots: - typescript - verdaccio - '@nx/js@19.4.2(@babel/traverse@7.24.5)(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(nx@19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11)))(typescript@5.4.5)': + '@nx/js@19.4.2(@babel/traverse@7.24.5)(@swc/core@1.4.17)(@types/node@20.12.8)(nx@19.4.2(@swc/core@1.4.17))(typescript@5.4.5)': dependencies: '@babel/core': 7.23.9 '@babel/plugin-proposal-decorators': 7.24.1(@babel/core@7.23.9) @@ -20447,9 +20421,9 @@ snapshots: '@babel/preset-env': 7.23.9(@babel/core@7.23.9) '@babel/preset-typescript': 7.24.1(@babel/core@7.23.9) '@babel/runtime': 7.24.5 - '@nrwl/js': 19.4.2(@babel/traverse@7.24.5)(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(nx@19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11)))(typescript@5.4.5) - '@nx/devkit': 19.4.2(nx@19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11))) - '@nx/workspace': 19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11)) + '@nrwl/js': 19.4.2(@babel/traverse@7.24.5)(@swc/core@1.4.17)(@types/node@20.12.8)(nx@19.4.2(@swc/core@1.4.17))(typescript@5.4.5) + '@nx/devkit': 19.4.2(nx@19.4.2(@swc/core@1.4.17)) + '@nx/workspace': 19.4.2(@swc/core@1.4.17) babel-plugin-const-enum: 1.2.0(@babel/core@7.23.9) babel-plugin-macros: 2.8.0 babel-plugin-transform-typescript-metadata: 0.3.2(@babel/core@7.23.9)(@babel/traverse@7.24.5) @@ -20466,7 +20440,7 @@ snapshots: ora: 5.3.0 semver: 7.6.2 source-map-support: 0.5.19 - ts-node: 10.9.1(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5) + ts-node: 10.9.1(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5) tsconfig-paths: 4.2.0 tslib: 2.6.3 transitivePeerDependencies: @@ -20510,13 +20484,13 @@ snapshots: '@nx/nx-win32-x64-msvc@19.4.2': optional: true - '@nx/workspace@19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11))': + '@nx/workspace@19.4.2(@swc/core@1.4.17)': dependencies: - '@nrwl/workspace': 19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11)) - '@nx/devkit': 19.4.2(nx@19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11))) + '@nrwl/workspace': 19.4.2(@swc/core@1.4.17) + '@nx/devkit': 19.4.2(nx@19.4.2(@swc/core@1.4.17)) chalk: 4.1.2 enquirer: 2.3.6 - nx: 19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11)) + nx: 19.4.2(@swc/core@1.4.17) tslib: 2.6.3 yargs-parser: 21.1.1 transitivePeerDependencies: @@ -22317,14 +22291,14 @@ snapshots: - encoding - supports-color - '@storybook/test@7.6.19(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)))': + '@storybook/test@7.6.19(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)))': dependencies: '@storybook/client-logger': 7.6.19 '@storybook/core-events': 7.6.19 '@storybook/instrumenter': 7.6.19 '@storybook/preview-api': 7.6.19 '@testing-library/dom': 9.3.4 - '@testing-library/jest-dom': 6.4.3(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5))) + '@testing-library/jest-dom': 6.4.3(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5))) '@testing-library/user-event': 14.3.0(@testing-library/dom@9.3.4) '@types/chai': 4.3.15 '@vitest/expect': 0.34.7 @@ -22440,7 +22414,7 @@ snapshots: lz-string: 1.5.0 pretty-format: 27.5.1 - '@testing-library/jest-dom@6.4.3(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)))': + '@testing-library/jest-dom@6.4.3(@jest/globals@29.7.0)(@types/jest@29.5.12)(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)))': dependencies: '@adobe/css-tools': 4.3.3 '@babel/runtime': 7.24.5 @@ -22453,7 +22427,7 @@ snapshots: optionalDependencies: '@jest/globals': 29.7.0 '@types/jest': 29.5.12 - jest: 29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + jest: 29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) '@testing-library/react@14.3.1(react-dom@18.0.0(react@18.0.0))(react@18.0.0)': dependencies: @@ -23500,14 +23474,14 @@ snapshots: '@webcomponents/custom-elements@1.6.0': {} - '@webpack-cli/configtest@1.2.0(webpack-cli@4.10.0(webpack@5.94.0))(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@4.10.0))': + '@webpack-cli/configtest@1.2.0(webpack-cli@4.10.0(webpack@5.94.0))(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@4.10.0))': dependencies: - webpack: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@4.10.0) + webpack: 5.94.0(@swc/core@1.4.17)(webpack-cli@4.10.0) webpack-cli: 4.10.0(webpack@5.94.0) - '@webpack-cli/configtest@2.1.1(webpack-cli@5.1.4(webpack-dev-server@4.15.1)(webpack@5.94.0))(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4))': + '@webpack-cli/configtest@2.1.1(webpack-cli@5.1.4(webpack-dev-server@4.15.1)(webpack@5.94.0))(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4))': dependencies: - webpack: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4) + webpack: 5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4) webpack-cli: 5.1.4(webpack-dev-server@4.15.1)(webpack@5.94.0) '@webpack-cli/info@1.5.0(webpack-cli@4.10.0(webpack@5.94.0))': @@ -23515,18 +23489,18 @@ snapshots: envinfo: 7.13.0 webpack-cli: 4.10.0(webpack@5.94.0) - '@webpack-cli/info@2.0.2(webpack-cli@5.1.4(webpack-dev-server@4.15.1)(webpack@5.94.0))(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4))': + '@webpack-cli/info@2.0.2(webpack-cli@5.1.4(webpack-dev-server@4.15.1)(webpack@5.94.0))(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4))': dependencies: - webpack: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4) + webpack: 5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4) webpack-cli: 5.1.4(webpack-dev-server@4.15.1)(webpack@5.94.0) '@webpack-cli/serve@1.7.0(webpack-cli@4.10.0(webpack@5.94.0))': dependencies: webpack-cli: 4.10.0(webpack@5.94.0) - '@webpack-cli/serve@2.0.5(webpack-cli@5.1.4(webpack-dev-server@4.15.1)(webpack@5.94.0))(webpack-dev-server@4.15.1(webpack-cli@5.1.4)(webpack@5.94.0))(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4))': + '@webpack-cli/serve@2.0.5(webpack-cli@5.1.4(webpack-dev-server@4.15.1)(webpack@5.94.0))(webpack-dev-server@4.15.1(webpack-cli@5.1.4)(webpack@5.94.0))(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4))': dependencies: - webpack: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4) + webpack: 5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4) webpack-cli: 5.1.4(webpack-dev-server@4.15.1)(webpack@5.94.0) optionalDependencies: webpack-dev-server: 4.15.1(webpack-cli@5.1.4)(webpack@5.94.0) @@ -24247,12 +24221,12 @@ snapshots: schema-utils: 4.2.0 webpack: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.18.20) - babel-loader@9.1.3(@babel/core@7.24.0)(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)): + babel-loader@9.1.3(@babel/core@7.24.0)(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)): dependencies: '@babel/core': 7.24.0 find-cache-dir: 4.0.0 schema-utils: 4.2.0 - webpack: 5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1) + webpack: 5.90.3(@swc/core@1.4.17)(esbuild@0.20.1) babel-messages@6.23.0: dependencies: @@ -25513,7 +25487,7 @@ snapshots: each-props: 1.3.2 is-plain-object: 5.0.0 - copy-webpack-plugin@11.0.0(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)): + copy-webpack-plugin@11.0.0(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)): dependencies: fast-glob: 3.3.2 glob-parent: 6.0.2 @@ -25521,7 +25495,7 @@ snapshots: normalize-path: 3.0.0 schema-utils: 4.2.0 serialize-javascript: 6.0.2 - webpack: 5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1) + webpack: 5.90.3(@swc/core@1.4.17)(esbuild@0.20.1) core-js-compat@3.37.0: dependencies: @@ -25625,13 +25599,13 @@ snapshots: safe-buffer: 5.2.1 sha.js: 2.4.11 - create-jest@29.7.0(@types/node@20.11.17)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@4.9.5)): + create-jest@29.7.0(@types/node@20.11.17)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@4.9.5)): dependencies: '@jest/types': 29.6.3 chalk: 4.1.2 exit: 0.1.2 graceful-fs: 4.2.11 - jest-config: 29.7.0(@types/node@20.11.17)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@4.9.5)) + jest-config: 29.7.0(@types/node@20.11.17)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@4.9.5)) jest-util: 29.7.0 prompts: 2.4.2 transitivePeerDependencies: @@ -25640,13 +25614,13 @@ snapshots: - supports-color - ts-node - create-jest@29.7.0(@types/node@20.11.17)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@5.4.5)): + create-jest@29.7.0(@types/node@20.11.17)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@5.4.5)): dependencies: '@jest/types': 29.6.3 chalk: 4.1.2 exit: 0.1.2 graceful-fs: 4.2.11 - jest-config: 29.7.0(@types/node@20.11.17)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@5.4.5)) + jest-config: 29.7.0(@types/node@20.11.17)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@5.4.5)) jest-util: 29.7.0 prompts: 2.4.2 transitivePeerDependencies: @@ -25656,13 +25630,13 @@ snapshots: - ts-node optional: true - create-jest@29.7.0(@types/node@20.12.8)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)): + create-jest@29.7.0(@types/node@20.12.8)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)): dependencies: '@jest/types': 29.6.3 chalk: 4.1.2 exit: 0.1.2 graceful-fs: 4.2.11 - jest-config: 29.7.0(@types/node@20.12.8)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + jest-config: 29.7.0(@types/node@20.12.8)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) jest-util: 29.7.0 prompts: 2.4.2 transitivePeerDependencies: @@ -25726,7 +25700,7 @@ snapshots: utrie: 1.0.2 optional: true - css-loader@6.10.0(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)): + css-loader@6.10.0(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)): dependencies: icss-utils: 5.1.0(postcss@8.4.38) postcss: 8.4.38 @@ -25737,7 +25711,7 @@ snapshots: postcss-value-parser: 4.2.0 semver: 7.6.0 optionalDependencies: - webpack: 5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1) + webpack: 5.90.3(@swc/core@1.4.17)(esbuild@0.20.1) css-loader@6.10.0(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.18.20)): dependencies: @@ -25752,7 +25726,7 @@ snapshots: optionalDependencies: webpack: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.18.20) - css-loader@6.10.0(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4)): + css-loader@6.10.0(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4)): dependencies: icss-utils: 5.1.0(postcss@8.4.38) postcss: 8.4.38 @@ -25763,7 +25737,7 @@ snapshots: postcss-value-parser: 4.2.0 semver: 7.6.0 optionalDependencies: - webpack: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4) + webpack: 5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4) css-select@4.3.0: dependencies: @@ -26201,7 +26175,7 @@ snapshots: devextreme-cldr-data@1.0.3: {} - devextreme-internal-tools@16.0.0-beta.4: + devextreme-internal-tools@16.0.0-beta.5: dependencies: dasherize: 2.0.0 deepmerge: 4.3.1 @@ -27111,28 +27085,28 @@ snapshots: eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.29.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0))(eslint@8.56.0) eslint-plugin-import: 2.29.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0) - eslint-config-devextreme@0.2.0(egfur7fnyqervmydw5qnwg7txm): + eslint-config-devextreme@0.2.0(nt5hismqxwjxxqa6gvmdnutfx4): dependencies: '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5) eslint: 8.56.0 eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.29.0(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0))(eslint@8.56.0) eslint-config-airbnb-typescript: 17.1.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5))(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint-plugin-import@2.29.0(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0))(eslint@8.56.0) eslint-plugin-import: 2.29.0(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0) - eslint-plugin-jest: 27.6.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)))(typescript@4.9.5) + eslint-plugin-jest: 27.6.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)))(typescript@4.9.5) eslint-plugin-jest-formatting: 3.1.0(eslint@8.56.0) eslint-plugin-jsx-a11y: 6.8.0(eslint@8.56.0) eslint-plugin-qunit: 7.3.4(eslint@8.56.0) eslint-plugin-rulesdir: 0.2.2 eslint-plugin-spellcheck: 0.0.20(eslint@8.56.0) - eslint-config-devextreme@1.1.5(mc6mdjn3bqdch3ntqtyrrxh4zu): + eslint-config-devextreme@1.1.5(32us5hk6ey7kygdhumlolw2goe): dependencies: '@typescript-eslint/eslint-plugin': 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5) eslint: 8.56.0 eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.29.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0))(eslint@8.56.0) eslint-config-airbnb-typescript: 17.1.0(@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5))(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint-plugin-import@2.29.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0))(eslint@8.56.0) eslint-plugin-import: 2.29.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0) - eslint-plugin-jest: 27.6.0(@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)))(typescript@4.9.5) + eslint-plugin-jest: 27.6.0(@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(jest@29.7.0(@types/node@20.11.17)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@4.9.5)))(typescript@4.9.5) eslint-plugin-jest-formatting: 3.1.0(eslint@8.56.0) eslint-plugin-jsx-a11y: 6.8.0(eslint@8.56.0) eslint-plugin-qunit: 7.3.4(eslint@8.56.0) @@ -27141,37 +27115,37 @@ snapshots: stylelint: 16.5.0(typescript@4.9.5) stylelint-config-standard: 35.0.0(stylelint@16.5.0(typescript@4.9.5)) - eslint-config-devextreme@1.1.5(nknyrvff45lcpgpbhxgb55tgoq): + eslint-config-devextreme@1.1.5(b2jhgakwtw2koupjm3wbduqzoa): dependencies: - '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5) + '@typescript-eslint/eslint-plugin': 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5) eslint: 8.56.0 - eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.29.0(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0))(eslint@8.56.0) - eslint-config-airbnb-typescript: 17.1.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5))(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint-plugin-import@2.29.0(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0))(eslint@8.56.0) - eslint-plugin-import: 2.29.0(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0) - eslint-plugin-jest: 27.6.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)))(typescript@4.9.5) + eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.29.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0))(eslint@8.56.0) + eslint-config-airbnb-typescript: 17.1.0(@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5))(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint-plugin-import@2.29.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0))(eslint@8.56.0) + eslint-plugin-import: 2.29.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0) + eslint-plugin-jest: 27.6.0(@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)))(typescript@4.9.5) eslint-plugin-jest-formatting: 3.1.0(eslint@8.56.0) eslint-plugin-jsx-a11y: 6.8.0(eslint@8.56.0) eslint-plugin-qunit: 7.3.4(eslint@8.56.0) eslint-plugin-rulesdir: 0.2.2 eslint-plugin-spellcheck: 0.0.20(eslint@8.56.0) - stylelint: 15.11.0(typescript@4.9.5) - stylelint-config-standard: 35.0.0(stylelint@15.11.0(typescript@4.9.5)) + stylelint: 16.5.0(typescript@4.9.5) + stylelint-config-standard: 35.0.0(stylelint@16.5.0(typescript@4.9.5)) - eslint-config-devextreme@1.1.5(rzk5rjmmui3bnih6n3f6jxxxzq): + eslint-config-devextreme@1.1.5(jporbcrewswymof3ildto722zy): dependencies: - '@typescript-eslint/eslint-plugin': 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5) + '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5) eslint: 8.56.0 - eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.29.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0))(eslint@8.56.0) - eslint-config-airbnb-typescript: 17.1.0(@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5))(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint-plugin-import@2.29.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0))(eslint@8.56.0) - eslint-plugin-import: 2.29.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0) - eslint-plugin-jest: 27.6.0(@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(jest@29.7.0(@types/node@20.11.17)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@4.9.5)))(typescript@4.9.5) + eslint-config-airbnb-base: 15.0.0(eslint-plugin-import@2.29.0(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0))(eslint@8.56.0) + eslint-config-airbnb-typescript: 17.1.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5))(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint-plugin-import@2.29.0(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0))(eslint@8.56.0) + eslint-plugin-import: 2.29.0(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0) + eslint-plugin-jest: 27.6.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)))(typescript@4.9.5) eslint-plugin-jest-formatting: 3.1.0(eslint@8.56.0) eslint-plugin-jsx-a11y: 6.8.0(eslint@8.56.0) eslint-plugin-qunit: 7.3.4(eslint@8.56.0) eslint-plugin-rulesdir: 0.2.2 eslint-plugin-spellcheck: 0.0.20(eslint@8.56.0) - stylelint: 16.5.0(typescript@4.9.5) - stylelint-config-standard: 35.0.0(stylelint@16.5.0(typescript@4.9.5)) + stylelint: 15.11.0(typescript@4.9.5) + stylelint-config-standard: 35.0.0(stylelint@15.11.0(typescript@4.9.5)) eslint-import-resolver-node@0.3.9: dependencies: @@ -27277,35 +27251,35 @@ snapshots: dependencies: eslint: 8.56.0 - eslint-plugin-jest@27.6.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)))(typescript@4.9.5): + eslint-plugin-jest@27.6.0(@typescript-eslint/eslint-plugin@5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)))(typescript@4.9.5): dependencies: '@typescript-eslint/utils': 5.62.0(eslint@8.56.0)(typescript@4.9.5) eslint: 8.56.0 optionalDependencies: '@typescript-eslint/eslint-plugin': 5.62.0(@typescript-eslint/parser@5.62.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5) - jest: 29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + jest: 29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) transitivePeerDependencies: - supports-color - typescript - eslint-plugin-jest@27.6.0(@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(jest@29.7.0(@types/node@20.11.17)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@4.9.5)))(typescript@4.9.5): + eslint-plugin-jest@27.6.0(@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(jest@29.7.0(@types/node@20.11.17)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@4.9.5)))(typescript@4.9.5): dependencies: '@typescript-eslint/utils': 5.62.0(eslint@8.56.0)(typescript@4.9.5) eslint: 8.56.0 optionalDependencies: '@typescript-eslint/eslint-plugin': 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5) - jest: 29.7.0(@types/node@20.11.17)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@4.9.5)) + jest: 29.7.0(@types/node@20.11.17)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@4.9.5)) transitivePeerDependencies: - supports-color - typescript - eslint-plugin-jest@27.6.0(@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)))(typescript@4.9.5): + eslint-plugin-jest@27.6.0(@typescript-eslint/eslint-plugin@6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)))(typescript@4.9.5): dependencies: '@typescript-eslint/utils': 5.62.0(eslint@8.56.0)(typescript@4.9.5) eslint: 8.56.0 optionalDependencies: '@typescript-eslint/eslint-plugin': 6.21.0(@typescript-eslint/parser@6.21.0(eslint@8.56.0)(typescript@4.9.5))(eslint@8.56.0)(typescript@4.9.5) - jest: 29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + jest: 29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) transitivePeerDependencies: - supports-color - typescript @@ -29063,7 +29037,7 @@ snapshots: html-tags@3.3.1: {} - html-webpack-plugin@5.6.0(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)): + html-webpack-plugin@5.6.0(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)): dependencies: '@types/html-minifier-terser': 6.1.0 html-minifier-terser: 6.1.0 @@ -29071,7 +29045,7 @@ snapshots: pretty-error: 4.0.0 tapable: 2.2.1 optionalDependencies: - webpack: 5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1) + webpack: 5.90.3(@swc/core@1.4.17)(esbuild@0.20.1) optional: true html-webpack-plugin@5.6.0(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.18.20)): @@ -29920,9 +29894,9 @@ snapshots: - babel-plugin-macros - supports-color - jest-cli@26.6.3(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)): + jest-cli@26.6.3(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)): dependencies: - '@jest/core': 26.6.3(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + '@jest/core': 26.6.3(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) '@jest/test-result': 26.6.2 '@jest/types': 26.6.2 chalk: 4.1.2 @@ -29930,7 +29904,7 @@ snapshots: graceful-fs: 4.2.11 import-local: 3.1.0 is-ci: 2.0.0 - jest-config: 26.6.3(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + jest-config: 26.6.3(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) jest-util: 26.6.2 jest-validate: 26.6.2 prompts: 2.4.2 @@ -29942,16 +29916,16 @@ snapshots: - ts-node - utf-8-validate - jest-cli@29.7.0(@types/node@20.11.17)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@4.9.5)): + jest-cli@29.7.0(@types/node@20.11.17)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@4.9.5)): dependencies: - '@jest/core': 29.7.0(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@4.9.5)) + '@jest/core': 29.7.0(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@4.9.5)) '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 chalk: 4.1.2 - create-jest: 29.7.0(@types/node@20.11.17)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@4.9.5)) + create-jest: 29.7.0(@types/node@20.11.17)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@4.9.5)) exit: 0.1.2 import-local: 3.1.0 - jest-config: 29.7.0(@types/node@20.11.17)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@4.9.5)) + jest-config: 29.7.0(@types/node@20.11.17)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@4.9.5)) jest-util: 29.7.0 jest-validate: 29.7.0 yargs: 17.7.2 @@ -29963,16 +29937,16 @@ snapshots: - supports-color - ts-node - jest-cli@29.7.0(@types/node@20.11.17)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@5.4.5)): + jest-cli@29.7.0(@types/node@20.11.17)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@5.4.5)): dependencies: - '@jest/core': 29.7.0(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@5.4.5)) + '@jest/core': 29.7.0(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@5.4.5)) '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 chalk: 4.1.2 - create-jest: 29.7.0(@types/node@20.11.17)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@5.4.5)) + create-jest: 29.7.0(@types/node@20.11.17)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@5.4.5)) exit: 0.1.2 import-local: 3.1.0 - jest-config: 29.7.0(@types/node@20.11.17)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@5.4.5)) + jest-config: 29.7.0(@types/node@20.11.17)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@5.4.5)) jest-util: 29.7.0 jest-validate: 29.7.0 yargs: 17.7.2 @@ -29985,16 +29959,16 @@ snapshots: - ts-node optional: true - jest-cli@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)): + jest-cli@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)): dependencies: - '@jest/core': 29.7.0(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + '@jest/core': 29.7.0(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 chalk: 4.1.2 - create-jest: 29.7.0(@types/node@20.12.8)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + create-jest: 29.7.0(@types/node@20.12.8)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) exit: 0.1.2 import-local: 3.1.0 - jest-config: 29.7.0(@types/node@20.12.8)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + jest-config: 29.7.0(@types/node@20.12.8)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) jest-util: 29.7.0 jest-validate: 29.7.0 yargs: 17.7.2 @@ -30006,10 +29980,10 @@ snapshots: - supports-color - ts-node - jest-config@26.6.3(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)): + jest-config@26.6.3(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)): dependencies: '@babel/core': 7.23.9 - '@jest/test-sequencer': 26.6.3(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + '@jest/test-sequencer': 26.6.3(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) '@jest/types': 26.6.2 babel-jest: 26.6.3(@babel/core@7.23.9) chalk: 4.1.2 @@ -30019,7 +29993,7 @@ snapshots: jest-environment-jsdom: 26.6.2 jest-environment-node: 26.6.2 jest-get-type: 26.3.0 - jest-jasmine2: 26.6.3(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + jest-jasmine2: 26.6.3 jest-regex-util: 26.0.0 jest-resolve: 26.6.2 jest-util: 26.6.2 @@ -30027,14 +30001,14 @@ snapshots: micromatch: 4.0.5 pretty-format: 26.6.2 optionalDependencies: - ts-node: 10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5) + ts-node: 10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5) transitivePeerDependencies: - bufferutil - canvas - supports-color - utf-8-validate - jest-config@29.7.0(@types/node@20.11.17)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@4.9.5)): + jest-config@29.7.0(@types/node@20.11.17)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@4.9.5)): dependencies: '@babel/core': 7.23.9 '@jest/test-sequencer': 29.7.0 @@ -30060,12 +30034,12 @@ snapshots: strip-json-comments: 3.1.1 optionalDependencies: '@types/node': 20.11.17 - ts-node: 10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@4.9.5) + ts-node: 10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@4.9.5) transitivePeerDependencies: - babel-plugin-macros - supports-color - jest-config@29.7.0(@types/node@20.11.17)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@5.4.5)): + jest-config@29.7.0(@types/node@20.11.17)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@5.4.5)): dependencies: '@babel/core': 7.23.9 '@jest/test-sequencer': 29.7.0 @@ -30091,13 +30065,13 @@ snapshots: strip-json-comments: 3.1.1 optionalDependencies: '@types/node': 20.11.17 - ts-node: 10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@5.4.5) + ts-node: 10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@5.4.5) transitivePeerDependencies: - babel-plugin-macros - supports-color optional: true - jest-config@29.7.0(@types/node@20.12.8)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@4.9.5)): + jest-config@29.7.0(@types/node@20.12.8)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@4.9.5)): dependencies: '@babel/core': 7.23.9 '@jest/test-sequencer': 29.7.0 @@ -30123,12 +30097,12 @@ snapshots: strip-json-comments: 3.1.1 optionalDependencies: '@types/node': 20.12.8 - ts-node: 10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@4.9.5) + ts-node: 10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@4.9.5) transitivePeerDependencies: - babel-plugin-macros - supports-color - jest-config@29.7.0(@types/node@20.12.8)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@5.4.5)): + jest-config@29.7.0(@types/node@20.12.8)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@5.4.5)): dependencies: '@babel/core': 7.23.9 '@jest/test-sequencer': 29.7.0 @@ -30154,13 +30128,13 @@ snapshots: strip-json-comments: 3.1.1 optionalDependencies: '@types/node': 20.12.8 - ts-node: 10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@5.4.5) + ts-node: 10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@5.4.5) transitivePeerDependencies: - babel-plugin-macros - supports-color optional: true - jest-config@29.7.0(@types/node@20.12.8)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)): + jest-config@29.7.0(@types/node@20.12.8)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)): dependencies: '@babel/core': 7.23.9 '@jest/test-sequencer': 29.7.0 @@ -30186,7 +30160,7 @@ snapshots: strip-json-comments: 3.1.1 optionalDependencies: '@types/node': 20.12.8 - ts-node: 10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5) + ts-node: 10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5) transitivePeerDependencies: - babel-plugin-macros - supports-color @@ -30317,7 +30291,7 @@ snapshots: optionalDependencies: fsevents: 2.3.3 - jest-jasmine2@26.6.3(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)): + jest-jasmine2@26.6.3: dependencies: '@babel/traverse': 7.24.5 '@jest/environment': 26.6.2 @@ -30332,17 +30306,13 @@ snapshots: jest-each: 26.6.2 jest-matcher-utils: 26.6.2 jest-message-util: 26.6.2 - jest-runtime: 26.6.3(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + jest-runtime: 26.6.3(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) jest-snapshot: 26.6.2 jest-util: 26.6.2 pretty-format: 26.6.2 throat: 5.0.0 transitivePeerDependencies: - - bufferutil - - canvas - supports-color - - ts-node - - utf-8-validate jest-leak-detector@26.6.2: dependencies: @@ -30458,7 +30428,7 @@ snapshots: resolve.exports: 2.0.2 slash: 3.0.0 - jest-runner@26.6.3(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)): + jest-runner@26.6.3(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)): dependencies: '@jest/console': 26.6.2 '@jest/environment': 26.6.2 @@ -30469,13 +30439,13 @@ snapshots: emittery: 0.7.2 exit: 0.1.2 graceful-fs: 4.2.11 - jest-config: 26.6.3(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + jest-config: 26.6.3(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) jest-docblock: 26.0.0 jest-haste-map: 26.6.2 jest-leak-detector: 26.6.2 jest-message-util: 26.6.2 jest-resolve: 26.6.2 - jest-runtime: 26.6.3(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + jest-runtime: 26.6.3(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) jest-util: 26.6.2 jest-worker: 26.6.2 source-map-support: 0.5.21 @@ -30513,7 +30483,7 @@ snapshots: transitivePeerDependencies: - supports-color - jest-runtime@26.6.3(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)): + jest-runtime@26.6.3(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)): dependencies: '@jest/console': 26.6.2 '@jest/environment': 26.6.2 @@ -30530,7 +30500,7 @@ snapshots: exit: 0.1.2 glob: 7.2.3 graceful-fs: 4.2.11 - jest-config: 26.6.3(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + jest-config: 26.6.3(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) jest-haste-map: 26.6.2 jest-message-util: 26.6.2 jest-mock: 26.6.2 @@ -30703,11 +30673,11 @@ snapshots: merge-stream: 2.0.0 supports-color: 8.1.1 - jest@26.6.3(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)): + jest@26.6.3(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)): dependencies: - '@jest/core': 26.6.3(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + '@jest/core': 26.6.3(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) import-local: 3.1.0 - jest-cli: 26.6.3(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + jest-cli: 26.6.3(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) transitivePeerDependencies: - bufferutil - canvas @@ -30715,12 +30685,12 @@ snapshots: - ts-node - utf-8-validate - jest@29.7.0(@types/node@20.11.17)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@4.9.5)): + jest@29.7.0(@types/node@20.11.17)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@4.9.5)): dependencies: - '@jest/core': 29.7.0(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@4.9.5)) + '@jest/core': 29.7.0(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@4.9.5)) '@jest/types': 29.6.3 import-local: 3.1.0 - jest-cli: 29.7.0(@types/node@20.11.17)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@4.9.5)) + jest-cli: 29.7.0(@types/node@20.11.17)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@4.9.5)) optionalDependencies: node-notifier: 9.0.1 transitivePeerDependencies: @@ -30729,12 +30699,12 @@ snapshots: - supports-color - ts-node - jest@29.7.0(@types/node@20.11.17)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@5.4.5)): + jest@29.7.0(@types/node@20.11.17)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@5.4.5)): dependencies: - '@jest/core': 29.7.0(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@5.4.5)) + '@jest/core': 29.7.0(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@5.4.5)) '@jest/types': 29.6.3 import-local: 3.1.0 - jest-cli: 29.7.0(@types/node@20.11.17)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@5.4.5)) + jest-cli: 29.7.0(@types/node@20.11.17)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@5.4.5)) optionalDependencies: node-notifier: 9.0.1 transitivePeerDependencies: @@ -30744,12 +30714,12 @@ snapshots: - ts-node optional: true - jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)): + jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)): dependencies: - '@jest/core': 29.7.0(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + '@jest/core': 29.7.0(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) '@jest/types': 29.6.3 import-local: 3.1.0 - jest-cli: 29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + jest-cli: 29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) optionalDependencies: node-notifier: 9.0.1 transitivePeerDependencies: @@ -31029,11 +30999,11 @@ snapshots: dependencies: source-map-support: 0.5.21 - karma-webpack@5.0.1(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))): + karma-webpack@5.0.1(webpack@5.94.0(@swc/core@1.4.17)): dependencies: glob: 7.2.3 minimatch: 9.0.4 - webpack: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11)) + webpack: 5.94.0(@swc/core@1.4.17) webpack-merge: 4.2.2 karma@6.4.4: @@ -31143,11 +31113,11 @@ snapshots: lead@4.0.0: {} - less-loader@11.1.0(less@4.2.0)(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)): + less-loader@11.1.0(less@4.2.0)(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)): dependencies: klona: 2.0.6 less: 4.2.0 - webpack: 5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1) + webpack: 5.90.3(@swc/core@1.4.17)(esbuild@0.20.1) less@3.13.1: dependencies: @@ -31183,11 +31153,11 @@ snapshots: prelude-ls: 1.2.1 type-check: 0.4.0 - license-webpack-plugin@4.0.2(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)): + license-webpack-plugin@4.0.2(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)): dependencies: webpack-sources: 3.2.3 optionalDependencies: - webpack: 5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1) + webpack: 5.90.3(@swc/core@1.4.17)(esbuild@0.20.1) lie@3.3.0: dependencies: @@ -31746,11 +31716,11 @@ snapshots: min-indent@1.0.1: {} - mini-css-extract-plugin@2.8.1(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)): + mini-css-extract-plugin@2.8.1(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)): dependencies: schema-utils: 4.2.0 tapable: 2.2.1 - webpack: 5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1) + webpack: 5.90.3(@swc/core@1.4.17)(esbuild@0.20.1) minimalistic-assert@1.0.1: {} @@ -32328,9 +32298,9 @@ snapshots: transitivePeerDependencies: - debug - nx@19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11)): + nx@19.4.2(@swc/core@1.4.17): dependencies: - '@nrwl/tao': 19.4.2(@swc/core@1.4.17(@swc/helpers@0.5.11)) + '@nrwl/tao': 19.4.2(@swc/core@1.4.17) '@yarnpkg/lockfile': 1.1.0 '@yarnpkg/parsers': 3.0.0-rc.46 '@zkochan/js-yaml': 0.0.7 @@ -32997,14 +32967,14 @@ snapshots: postcss: 8.4.38 postcss-syntax: 0.36.2(postcss-html@0.36.0)(postcss@8.4.38) - postcss-loader@8.1.1(postcss@8.4.35)(typescript@5.4.5)(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)): + postcss-loader@8.1.1(postcss@8.4.35)(typescript@5.4.5)(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)): dependencies: cosmiconfig: 9.0.0(typescript@5.4.5) jiti: 1.21.0 postcss: 8.4.35 semver: 7.6.2 optionalDependencies: - webpack: 5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1) + webpack: 5.90.3(@swc/core@1.4.17)(esbuild@0.20.1) transitivePeerDependencies: - typescript @@ -34130,13 +34100,13 @@ snapshots: sass-embedded-win32-ia32: 1.66.0 sass-embedded-win32-x64: 1.66.0 - sass-loader@14.1.1(sass-embedded@1.66.0)(sass@1.71.1)(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)): + sass-loader@14.1.1(sass-embedded@1.66.0)(sass@1.71.1)(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)): dependencies: neo-async: 2.6.2 optionalDependencies: sass: 1.71.1 sass-embedded: 1.66.0 - webpack: 5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1) + webpack: 5.90.3(@swc/core@1.4.17)(esbuild@0.20.1) sass-lookup@5.0.1: dependencies: @@ -34511,17 +34481,17 @@ snapshots: source-map-js@1.2.0: {} - source-map-loader@4.0.2(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4)): + source-map-loader@4.0.2(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4)): dependencies: iconv-lite: 0.6.3 source-map-js: 1.2.0 - webpack: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4) + webpack: 5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4) - source-map-loader@5.0.0(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)): + source-map-loader@5.0.0(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)): dependencies: iconv-lite: 0.6.3 source-map-js: 1.2.0 - webpack: 5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1) + webpack: 5.90.3(@swc/core@1.4.17)(esbuild@0.20.1) source-map-resolve@0.5.3: dependencies: @@ -34753,11 +34723,11 @@ snapshots: char-regex: 1.0.2 strip-ansi: 6.0.1 - string-replace-loader@3.1.0(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))): + string-replace-loader@3.1.0(webpack@5.94.0(@swc/core@1.4.17)): dependencies: loader-utils: 2.0.4 schema-utils: 3.3.0 - webpack: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11)) + webpack: 5.94.0(@swc/core@1.4.17) string-width@1.0.2: dependencies: @@ -34891,9 +34861,9 @@ snapshots: dependencies: webpack: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.18.20) - style-loader@3.3.4(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4)): + style-loader@3.3.4(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4)): dependencies: - webpack: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4) + webpack: 5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4) style-search@0.1.0: {} @@ -35385,48 +35355,48 @@ snapshots: '@swc/core': 1.4.17(@swc/helpers@0.5.11) esbuild: 0.18.20 - terser-webpack-plugin@5.3.10(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)): + terser-webpack-plugin@5.3.10(@swc/core@1.4.17)(esbuild@0.20.1)(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.2 terser: 5.31.0 - webpack: 5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1) + webpack: 5.90.3(@swc/core@1.4.17)(esbuild@0.20.1) optionalDependencies: '@swc/core': 1.4.17(@swc/helpers@0.5.11) esbuild: 0.20.1 - terser-webpack-plugin@5.3.10(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@4.10.0)): + terser-webpack-plugin@5.3.10(@swc/core@1.4.17)(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@4.10.0)): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.2 terser: 5.31.0 - webpack: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@4.10.0) + webpack: 5.94.0(@swc/core@1.4.17)(webpack-cli@4.10.0) optionalDependencies: '@swc/core': 1.4.17(@swc/helpers@0.5.11) - terser-webpack-plugin@5.3.10(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4)): + terser-webpack-plugin@5.3.10(@swc/core@1.4.17)(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4)): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.2 terser: 5.31.0 - webpack: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4) + webpack: 5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4) optionalDependencies: '@swc/core': 1.4.17(@swc/helpers@0.5.11) - terser-webpack-plugin@5.3.10(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))): + terser-webpack-plugin@5.3.10(@swc/core@1.4.17)(webpack@5.94.0(@swc/core@1.4.17)): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.2 terser: 5.31.0 - webpack: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11)) + webpack: 5.94.0(@swc/core@1.4.17) optionalDependencies: '@swc/core': 1.4.17(@swc/helpers@0.5.11) @@ -35442,14 +35412,14 @@ snapshots: '@swc/core': 1.4.17(@swc/helpers@0.5.11) esbuild: 0.18.20 - terser-webpack-plugin@5.3.9(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))): + terser-webpack-plugin@5.3.9(@swc/core@1.4.17)(webpack@5.94.0(@swc/core@1.4.17)): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 schema-utils: 3.3.0 serialize-javascript: 6.0.2 terser: 5.31.0 - webpack: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11)) + webpack: 5.94.0(@swc/core@1.4.17) optionalDependencies: '@swc/core': 1.4.17(@swc/helpers@0.5.11) @@ -36217,11 +36187,11 @@ snapshots: ts-dedent@2.2.0: {} - ts-jest@29.1.2(@babel/core@7.23.9)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.23.9))(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)))(typescript@4.9.5): + ts-jest@29.1.2(@babel/core@7.23.9)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.23.9))(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)))(typescript@4.9.5): dependencies: bs-logger: 0.2.6 fast-json-stable-stringify: 2.1.0 - jest: 29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + jest: 29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) jest-util: 29.7.0 json5: 2.2.3 lodash.memoize: 4.1.2 @@ -36234,11 +36204,11 @@ snapshots: '@jest/types': 29.6.3 babel-jest: 29.7.0(@babel/core@7.23.9) - ts-jest@29.1.2(@babel/core@7.24.5)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.5))(jest@29.7.0(@types/node@20.11.17)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@4.9.5)))(typescript@4.9.5): + ts-jest@29.1.2(@babel/core@7.24.5)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.5))(jest@29.7.0(@types/node@20.11.17)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@4.9.5)))(typescript@4.9.5): dependencies: bs-logger: 0.2.6 fast-json-stable-stringify: 2.1.0 - jest: 29.7.0(@types/node@20.11.17)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@4.9.5)) + jest: 29.7.0(@types/node@20.11.17)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@4.9.5)) jest-util: 29.7.0 json5: 2.2.3 lodash.memoize: 4.1.2 @@ -36251,11 +36221,11 @@ snapshots: '@jest/types': 29.6.3 babel-jest: 29.7.0(@babel/core@7.24.5) - ts-jest@29.1.2(@babel/core@7.24.5)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.5))(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)))(typescript@5.4.5): + ts-jest@29.1.2(@babel/core@7.24.5)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.5))(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)))(typescript@5.4.5): dependencies: bs-logger: 0.2.6 fast-json-stable-stringify: 2.1.0 - jest: 29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + jest: 29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) jest-util: 29.7.0 json5: 2.2.3 lodash.memoize: 4.1.2 @@ -36268,11 +36238,11 @@ snapshots: '@jest/types': 29.6.3 babel-jest: 29.7.0(@babel/core@7.24.5) - ts-jest@29.1.3(@babel/core@7.24.5)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.5))(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)))(typescript@4.9.5): + ts-jest@29.1.3(@babel/core@7.24.5)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.5))(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)))(typescript@4.9.5): dependencies: bs-logger: 0.2.6 fast-json-stable-stringify: 2.1.0 - jest: 29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + jest: 29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) jest-util: 29.7.0 json5: 2.2.3 lodash.memoize: 4.1.2 @@ -36286,11 +36256,11 @@ snapshots: '@jest/types': 29.6.3 babel-jest: 29.7.0(@babel/core@7.24.5) - ts-jest@29.1.3(@babel/core@7.24.5)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.5))(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)))(typescript@5.4.5): + ts-jest@29.1.3(@babel/core@7.24.5)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.24.5))(jest@29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)))(typescript@5.4.5): dependencies: bs-logger: 0.2.6 fast-json-stable-stringify: 2.1.0 - jest: 29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5)) + jest: 29.7.0(@types/node@20.12.8)(node-notifier@9.0.1)(ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5)) jest-util: 29.7.0 json5: 2.2.3 lodash.memoize: 4.1.2 @@ -36304,7 +36274,7 @@ snapshots: '@jest/types': 29.6.3 babel-jest: 29.7.0(@babel/core@7.24.5) - ts-loader@9.5.1(typescript@4.9.5)(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4)): + ts-loader@9.5.1(typescript@4.9.5)(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4)): dependencies: chalk: 4.1.2 enhanced-resolve: 5.16.0 @@ -36312,9 +36282,9 @@ snapshots: semver: 7.6.0 source-map: 0.7.4 typescript: 4.9.5 - webpack: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4) + webpack: 5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4) - ts-loader@9.5.1(typescript@5.4.5)(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4)): + ts-loader@9.5.1(typescript@5.4.5)(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4)): dependencies: chalk: 4.1.2 enhanced-resolve: 5.16.0 @@ -36322,9 +36292,9 @@ snapshots: semver: 7.6.0 source-map: 0.7.4 typescript: 5.4.5 - webpack: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4) + webpack: 5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4) - ts-node@10.9.1(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5): + ts-node@10.9.1(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.11 @@ -36344,7 +36314,7 @@ snapshots: optionalDependencies: '@swc/core': 1.4.17(@swc/helpers@0.5.11) - ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@4.9.5): + ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@4.9.5): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.11 @@ -36364,7 +36334,7 @@ snapshots: optionalDependencies: '@swc/core': 1.4.17(@swc/helpers@0.5.11) - ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.11.17)(typescript@5.4.5): + ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.11.17)(typescript@5.4.5): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.11 @@ -36384,7 +36354,7 @@ snapshots: optionalDependencies: '@swc/core': 1.4.17(@swc/helpers@0.5.11) - ts-node@10.9.2(@swc/core@1.4.17(@swc/helpers@0.5.11))(@types/node@20.12.8)(typescript@5.4.5): + ts-node@10.9.2(@swc/core@1.4.17)(@types/node@20.12.8)(typescript@5.4.5): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.11 @@ -36737,12 +36707,12 @@ snapshots: url-join@4.0.1: {} - url-loader@1.1.2(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4)): + url-loader@1.1.2(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4)): dependencies: loader-utils: 1.4.2 mime: 2.5.2 schema-utils: 1.0.0 - webpack: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4) + webpack: 5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4) url-parse@1.5.10: dependencies: @@ -37038,12 +37008,12 @@ snapshots: transitivePeerDependencies: - supports-color - vue-loader@17.4.2(@vue/compiler-sfc@3.3.4)(vue@3.2.47)(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4)): + vue-loader@17.4.2(@vue/compiler-sfc@3.3.4)(vue@3.2.47)(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4)): dependencies: chalk: 4.1.2 hash-sum: 2.0.0 watchpack: 2.4.1 - webpack: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4) + webpack: 5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4) optionalDependencies: '@vue/compiler-sfc': 3.3.4 vue: 3.2.47 @@ -37132,7 +37102,7 @@ snapshots: webpack-cli@4.10.0(webpack@5.94.0): dependencies: '@discoveryjs/json-ext': 0.5.7 - '@webpack-cli/configtest': 1.2.0(webpack-cli@4.10.0(webpack@5.94.0))(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@4.10.0)) + '@webpack-cli/configtest': 1.2.0(webpack-cli@4.10.0(webpack@5.94.0))(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@4.10.0)) '@webpack-cli/info': 1.5.0(webpack-cli@4.10.0(webpack@5.94.0)) '@webpack-cli/serve': 1.7.0(webpack-cli@4.10.0(webpack@5.94.0)) colorette: 2.0.20 @@ -37142,15 +37112,15 @@ snapshots: import-local: 3.1.0 interpret: 2.2.0 rechoir: 0.7.1 - webpack: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@4.10.0) + webpack: 5.94.0(@swc/core@1.4.17)(webpack-cli@4.10.0) webpack-merge: 5.10.0 webpack-cli@5.1.4(webpack-dev-server@4.15.1)(webpack@5.94.0): dependencies: '@discoveryjs/json-ext': 0.5.7 - '@webpack-cli/configtest': 2.1.1(webpack-cli@5.1.4(webpack-dev-server@4.15.1)(webpack@5.94.0))(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4)) - '@webpack-cli/info': 2.0.2(webpack-cli@5.1.4(webpack-dev-server@4.15.1)(webpack@5.94.0))(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4)) - '@webpack-cli/serve': 2.0.5(webpack-cli@5.1.4(webpack-dev-server@4.15.1)(webpack@5.94.0))(webpack-dev-server@4.15.1(webpack-cli@5.1.4)(webpack@5.94.0))(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4)) + '@webpack-cli/configtest': 2.1.1(webpack-cli@5.1.4(webpack-dev-server@4.15.1)(webpack@5.94.0))(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4)) + '@webpack-cli/info': 2.0.2(webpack-cli@5.1.4(webpack-dev-server@4.15.1)(webpack@5.94.0))(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4)) + '@webpack-cli/serve': 2.0.5(webpack-cli@5.1.4(webpack-dev-server@4.15.1)(webpack@5.94.0))(webpack-dev-server@4.15.1(webpack-cli@5.1.4)(webpack@5.94.0))(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4)) colorette: 2.0.20 commander: 10.0.1 cross-spawn: 7.0.3 @@ -37159,19 +37129,19 @@ snapshots: import-local: 3.1.0 interpret: 3.1.1 rechoir: 0.8.0 - webpack: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4) + webpack: 5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4) webpack-merge: 5.10.0 optionalDependencies: webpack-dev-server: 4.15.1(webpack-cli@5.1.4)(webpack@5.94.0) - webpack-dev-middleware@5.3.4(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)): + webpack-dev-middleware@5.3.4(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)): dependencies: colorette: 2.0.20 memfs: 3.5.3 mime-types: 2.1.35 range-parser: 1.2.1 schema-utils: 4.2.0 - webpack: 5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1) + webpack: 5.90.3(@swc/core@1.4.17)(esbuild@0.20.1) webpack-dev-middleware@5.3.4(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.18.20)): dependencies: @@ -37183,16 +37153,16 @@ snapshots: webpack: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.18.20) optional: true - webpack-dev-middleware@5.3.4(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4)): + webpack-dev-middleware@5.3.4(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4)): dependencies: colorette: 2.0.20 memfs: 3.5.3 mime-types: 2.1.35 range-parser: 1.2.1 schema-utils: 4.2.0 - webpack: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4) + webpack: 5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4) - webpack-dev-middleware@6.1.2(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)): + webpack-dev-middleware@6.1.2(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)): dependencies: colorette: 2.0.20 memfs: 3.5.3 @@ -37200,7 +37170,7 @@ snapshots: range-parser: 1.2.1 schema-utils: 4.2.0 optionalDependencies: - webpack: 5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1) + webpack: 5.90.3(@swc/core@1.4.17)(esbuild@0.20.1) webpack-dev-middleware@6.1.3(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.18.20)): dependencies: @@ -37242,10 +37212,10 @@ snapshots: serve-index: 1.9.1 sockjs: 0.3.24 spdy: 4.0.2 - webpack-dev-middleware: 5.3.4(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4)) + webpack-dev-middleware: 5.3.4(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4)) ws: 8.17.0 optionalDependencies: - webpack: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4) + webpack: 5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4) webpack-cli: 5.1.4(webpack-dev-server@4.15.1)(webpack@5.94.0) transitivePeerDependencies: - bufferutil @@ -37253,7 +37223,7 @@ snapshots: - supports-color - utf-8-validate - webpack-dev-server@4.15.1(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)): + webpack-dev-server@4.15.1(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)): dependencies: '@types/bonjour': 3.5.13 '@types/connect-history-api-fallback': 1.5.4 @@ -37283,10 +37253,10 @@ snapshots: serve-index: 1.9.1 sockjs: 0.3.24 spdy: 4.0.2 - webpack-dev-middleware: 5.3.4(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)) + webpack-dev-middleware: 5.3.4(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)) ws: 8.17.0 optionalDependencies: - webpack: 5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1) + webpack: 5.90.3(@swc/core@1.4.17)(esbuild@0.20.1) transitivePeerDependencies: - bufferutil - debug @@ -37352,7 +37322,7 @@ snapshots: webpack-sources@3.2.3: {} - webpack-stream@7.0.0(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))): + webpack-stream@7.0.0(webpack@5.94.0(@swc/core@1.4.17)): dependencies: fancy-log: 1.3.3 lodash.clone: 4.5.0 @@ -37362,20 +37332,20 @@ snapshots: supports-color: 8.1.1 through: 2.3.8 vinyl: 2.2.1 - webpack: 5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11)) + webpack: 5.94.0(@swc/core@1.4.17) - webpack-subresource-integrity@5.1.0(html-webpack-plugin@5.6.0(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)))(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)): + webpack-subresource-integrity@5.1.0(html-webpack-plugin@5.6.0(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)))(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)): dependencies: typed-assert: 1.0.9 - webpack: 5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1) + webpack: 5.90.3(@swc/core@1.4.17)(esbuild@0.20.1) optionalDependencies: - html-webpack-plugin: 5.6.0(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)) + html-webpack-plugin: 5.6.0(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)) webpack-virtual-modules@0.5.0: {} webpack-virtual-modules@0.6.1: {} - webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1): + webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1): dependencies: '@types/eslint-scope': 3.7.7 '@types/estree': 1.0.5 @@ -37398,7 +37368,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)(webpack@5.90.3(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.20.1)) + terser-webpack-plugin: 5.3.10(@swc/core@1.4.17)(esbuild@0.20.1)(webpack@5.90.3(@swc/core@1.4.17)(esbuild@0.20.1)) watchpack: 2.4.1 webpack-sources: 3.2.3 transitivePeerDependencies: @@ -37406,7 +37376,7 @@ snapshots: - esbuild - uglify-js - webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11)): + webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.18.20): dependencies: '@types/estree': 1.0.5 '@webassemblyjs/ast': 1.12.1 @@ -37428,7 +37398,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))) + terser-webpack-plugin: 5.3.10(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.18.20)(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.18.20)) watchpack: 2.4.1 webpack-sources: 3.2.3 transitivePeerDependencies: @@ -37436,7 +37406,7 @@ snapshots: - esbuild - uglify-js - webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.18.20): + webpack@5.94.0(@swc/core@1.4.17): dependencies: '@types/estree': 1.0.5 '@webassemblyjs/ast': 1.12.1 @@ -37458,7 +37428,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.18.20)(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(esbuild@0.18.20)) + terser-webpack-plugin: 5.3.10(@swc/core@1.4.17)(webpack@5.94.0(@swc/core@1.4.17)) watchpack: 2.4.1 webpack-sources: 3.2.3 transitivePeerDependencies: @@ -37466,7 +37436,7 @@ snapshots: - esbuild - uglify-js - webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@4.10.0): + webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@4.10.0): dependencies: '@types/estree': 1.0.5 '@webassemblyjs/ast': 1.12.1 @@ -37488,7 +37458,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@4.10.0)) + terser-webpack-plugin: 5.3.10(@swc/core@1.4.17)(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@4.10.0)) watchpack: 2.4.1 webpack-sources: 3.2.3 optionalDependencies: @@ -37498,7 +37468,7 @@ snapshots: - esbuild - uglify-js - webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4): + webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4): dependencies: '@types/estree': 1.0.5 '@webassemblyjs/ast': 1.12.1 @@ -37520,7 +37490,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack@5.94.0(@swc/core@1.4.17(@swc/helpers@0.5.11))(webpack-cli@5.1.4)) + terser-webpack-plugin: 5.3.10(@swc/core@1.4.17)(webpack@5.94.0(@swc/core@1.4.17)(webpack-cli@5.1.4)) watchpack: 2.4.1 webpack-sources: 3.2.3 optionalDependencies: From 07fc986a04279c3e2f568ea55781662862111fba Mon Sep 17 00:00:00 2001 From: alexlavrov Date: Wed, 25 Sep 2024 20:53:20 +0400 Subject: [PATCH 18/38] Fix BasePagerOptions --- packages/devextreme/js/common.d.ts | 6 ------ packages/devextreme/ts/dx.all.d.ts | 5 ----- 2 files changed, 11 deletions(-) diff --git a/packages/devextreme/js/common.d.ts b/packages/devextreme/js/common.d.ts index 17a08cd9402a..5468e45dff04 100644 --- a/packages/devextreme/js/common.d.ts +++ b/packages/devextreme/js/common.d.ts @@ -898,10 +898,4 @@ export type BasePagerOptions = { * @default "Page Navigation" */ label?: string; - - /** - * @docid - * @default [5, 10] - */ - allowedPageSizes?: Array<(number | PagerAllPagesMode)> | 'auto'; }; diff --git a/packages/devextreme/ts/dx.all.d.ts b/packages/devextreme/ts/dx.all.d.ts index ab286d8ee744..6aacfbbab1da 100644 --- a/packages/devextreme/ts/dx.all.d.ts +++ b/packages/devextreme/ts/dx.all.d.ts @@ -1367,11 +1367,6 @@ declare module DevExpress.common { * [descr:BasePagerOptions.label] */ label?: string; - - /** - * [descr:BasePagerOptions.allowedPageSizes] - */ - allowedPageSizes?: Array | 'auto'; }; export type ButtonStyle = 'text' | 'outlined' | 'contained'; export type ButtonType = 'danger' | 'default' | 'normal' | 'success'; From c614a02fc4c039dd82689329dbfa0acd2b8e9681 Mon Sep 17 00:00:00 2001 From: alexlavrov Date: Wed, 25 Sep 2024 21:30:09 +0400 Subject: [PATCH 19/38] Update namespaces of PagerDisplayMode, PagerPageSize in aliases.ts --- packages/devextreme/ts/aliases.d.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/packages/devextreme/ts/aliases.d.ts b/packages/devextreme/ts/aliases.d.ts index cbea74b4b9e2..4c98a81be8f8 100644 --- a/packages/devextreme/ts/aliases.d.ts +++ b/packages/devextreme/ts/aliases.d.ts @@ -395,10 +395,10 @@ declare module DevExpress.common.charts { export type GroupExpandMode = DevExpress.common.grids.GroupExpandMode; /** @deprecated Use DevExpress.common.grids.NewRowPosition instead */ export type NewRowPosition = DevExpress.common.grids.NewRowPosition; - /** @deprecated Use DevExpress.common.grids.PagerDisplayMode instead */ - export type PagerDisplayMode = DevExpress.common.grids.PagerDisplayMode; - /** @deprecated Use DevExpress.common.grids.PagerPageSize instead */ - export type PagerPageSize = DevExpress.common.grids.PagerPageSize; + /** @deprecated Use DevExpress.common.PagerDisplayMode instead */ + export type PagerDisplayMode = DevExpress.common.PagerDisplayMode; + /** @deprecated Use DevExpress.common.PagerPageSize instead */ + export type PagerPageSize = DevExpress.common.PagerPageSize; /** @deprecated Use DevExpress.common.grids.SelectedFilterOperation instead */ export type SelectedFilterOperation = DevExpress.common.grids.SelectedFilterOperation; /** @deprecated Use DevExpress.common.grids.SelectionColumnDisplayMode instead */ From c1a8d4781234b930b9ea504c3cbcd62f7b308c13 Mon Sep 17 00:00:00 2001 From: alexlavrov Date: Thu, 26 Sep 2024 10:26:03 +0400 Subject: [PATCH 20/38] Deprecate PagerDisplayMode, PagerPageSize in common.grid namespace --- packages/devextreme/ts/aliases.d.ts | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/packages/devextreme/ts/aliases.d.ts b/packages/devextreme/ts/aliases.d.ts index 4c98a81be8f8..0615dfcb4cf1 100644 --- a/packages/devextreme/ts/aliases.d.ts +++ b/packages/devextreme/ts/aliases.d.ts @@ -817,3 +817,12 @@ declare module DevExpress.ui.dxDiagram { /** @deprecated Use DevExpress.ui.dxDiagram.Units instead */ export type DiagramUnits = DevExpress.ui.dxDiagram.Units; } + +// 24.2 + +declare module DevExpress.common.grids { + /** @deprecated Use DevExpress.common.PagerDisplayMode instead */ + export type PagerDisplayMode = DevExpress.common.PagerDisplayMode; + /** @deprecated Use DevExpress.common.PagerPageSize instead */ + export type PagerPageSize = DevExpress.common.PagerPageSize; +} From 6e75c291db25668668e89cfe6514ef1e954ac5f9 Mon Sep 17 00:00:00 2001 From: Andrey Dolzhikov Date: Thu, 26 Sep 2024 17:13:35 +0300 Subject: [PATCH 21/38] test --- e2e/testcafe-devextreme/tests/pager/accessibility.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/e2e/testcafe-devextreme/tests/pager/accessibility.ts b/e2e/testcafe-devextreme/tests/pager/accessibility.ts index 4ef5e68f31fa..58fdcead0d75 100644 --- a/e2e/testcafe-devextreme/tests/pager/accessibility.ts +++ b/e2e/testcafe-devextreme/tests/pager/accessibility.ts @@ -53,7 +53,7 @@ const created = async (t: TestController, optionConfiguration): Promise => }; const a11yCheckConfig = { - // NOTE: color-contrast issues + // NOTE: color-contrast issues rules: { 'color-contrast': { enabled: false } }, }; From 31c4fa650eefd7670856e927f625a1a2658a176e Mon Sep 17 00:00:00 2001 From: Andrey Dolzhikov Date: Mon, 30 Sep 2024 12:58:32 +0300 Subject: [PATCH 22/38] Add Pager to components list resolved against Angular umd modules for SystemJs --- apps/demos/configs/Angular/config.js | 1 + packages/devextreme-angular/tests/src/server/component-names.ts | 1 + 2 files changed, 2 insertions(+) diff --git a/apps/demos/configs/Angular/config.js b/apps/demos/configs/Angular/config.js index 72cb67751f8c..85e49d587046 100644 --- a/apps/demos/configs/Angular/config.js +++ b/apps/demos/configs/Angular/config.js @@ -45,6 +45,7 @@ const componentNames = [ 'multi-view', 'nested', 'number-box', + 'pager', 'pie-chart', 'pivot-grid-field-chooser', 'pivot-grid', diff --git a/packages/devextreme-angular/tests/src/server/component-names.ts b/packages/devextreme-angular/tests/src/server/component-names.ts index 29f9d764046f..3acdc2ba3466 100644 --- a/packages/devextreme-angular/tests/src/server/component-names.ts +++ b/packages/devextreme-angular/tests/src/server/component-names.ts @@ -37,6 +37,7 @@ export const componentNames = [ 'menu', 'multi-view', 'number-box', + 'pager', 'pie-chart', 'pivot-grid', 'pivot-grid-field-chooser', From 78630649f7e45358bd07731912e693c97a49651a Mon Sep 17 00:00:00 2001 From: Andrey Dolzhikov Date: Mon, 30 Sep 2024 14:14:46 +0300 Subject: [PATCH 23/38] fix tests --- e2e/testcafe-devextreme/tests/pager/index.ts | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/e2e/testcafe-devextreme/tests/pager/index.ts b/e2e/testcafe-devextreme/tests/pager/index.ts index ae1f19955ae8..054371e92ec6 100644 --- a/e2e/testcafe-devextreme/tests/pager/index.ts +++ b/e2e/testcafe-devextreme/tests/pager/index.ts @@ -11,7 +11,7 @@ test('Pager visibile property', async (t) => { .expect(pager.element.hasClass('dx-state-invisible')) .ok(); }).before(async () => createWidget('dxPager', { - totalCount: 50, + itemCount: 50, visible: false, })); @@ -23,7 +23,7 @@ test('PageSize selector test', async (t) => { .expect(pager.option('pageCount')) .eql(13); }).before(async () => createWidget('dxPager', { - totalCount: 50, + itemCount: 50, pageIndex: 2, pageSize: 8, // pageCount: 7 allowedPageSizes: [2, 4, 8], @@ -39,7 +39,7 @@ test('PageIndex test', async (t) => { .expect(pager.option('pageIndex')) .eql(5); }).before(async () => createWidget('dxPager', { - totalCount: 50, + itemCount: 50, pageIndex: 1, pageSize: 5, // pageCount: 10 })); @@ -54,7 +54,7 @@ test('PageIndex correction test', async (t) => { .expect(pager.option('pageIndex')) .eql(5); }).before(async () => createWidget('dxPager', { - totalCount: 50, + itemCount: 50, pageIndex: 10, pageSize: 5, // pageCount: 10 })); From 56bbf7e24605a1e88cc2f94b53a08723e1e3e69b Mon Sep 17 00:00:00 2001 From: ilyakhd <14272298+IlyaKhD@users.noreply.github.com> Date: Mon, 30 Sep 2024 16:13:01 +0300 Subject: [PATCH 24/38] Fix tags --- packages/devextreme/js/common.d.ts | 2 +- packages/devextreme/js/common/grids.d.ts | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/packages/devextreme/js/common.d.ts b/packages/devextreme/js/common.d.ts index 5468e45dff04..88918b72c69c 100644 --- a/packages/devextreme/js/common.d.ts +++ b/packages/devextreme/js/common.d.ts @@ -858,7 +858,7 @@ export type PagerPageSize = 'all' | 'auto'; /** * @docid - * @public + * @hidden * @namespace DevExpress.common */ export type BasePagerOptions = { diff --git a/packages/devextreme/js/common/grids.d.ts b/packages/devextreme/js/common/grids.d.ts index 1d5aad9a8dae..71c4a25bb080 100644 --- a/packages/devextreme/js/common/grids.d.ts +++ b/packages/devextreme/js/common/grids.d.ts @@ -2501,12 +2501,14 @@ export type NewRowPosition = 'first' | 'last' | 'pageBottom' | 'pageTop' | 'view export type Pager = BasePagerOptions & { /** * @docid + * @public * @default "auto" */ allowedPageSizes?: Array<(number | PagerPageSize)> | Mode; /** * @docid + * @public * @default "auto" */ visible?: boolean | Mode; From eaf65eb71ca264a36a578bd421f588334655e3ef Mon Sep 17 00:00:00 2001 From: ilyakhd <14272298+IlyaKhD@users.noreply.github.com> Date: Thu, 3 Oct 2024 20:49:19 +0300 Subject: [PATCH 25/38] Move PagerPageSize back to common/grids --- .../devextreme-angular/src/common/grids/index.ts | 1 + packages/devextreme-angular/src/common/index.ts | 2 -- .../src/ui/data-grid/nested/pager.ts | 3 ++- .../devextreme-angular/src/ui/nested/base/pager.ts | 3 ++- packages/devextreme-angular/src/ui/pager/index.ts | 9 +++++---- .../src/ui/tree-list/nested/pager.ts | 3 ++- packages/devextreme-react/src/common/grids.ts | 1 + packages/devextreme-react/src/common/index.ts | 2 -- packages/devextreme-vue/src/common/grids.ts | 1 + packages/devextreme-vue/src/common/index.ts | 2 -- .../js/__internal/pager/common/base_pager_props.ts | 5 +++-- packages/devextreme/js/common.d.ts | 12 ------------ packages/devextreme/js/common/grids.d.ts | 7 ++++++- packages/devextreme/js/ui/pager.d.ts | 8 ++++++-- packages/devextreme/js/ui/pager_types.d.ts | 2 +- packages/devextreme/ts/aliases.d.ts | 6 ++---- packages/devextreme/ts/dx.all.d.ts | 7 ++++--- 17 files changed, 36 insertions(+), 38 deletions(-) diff --git a/packages/devextreme-angular/src/common/grids/index.ts b/packages/devextreme-angular/src/common/grids/index.ts index 10a57fa23d62..e06086eb7045 100644 --- a/packages/devextreme-angular/src/common/grids/index.ts +++ b/packages/devextreme-angular/src/common/grids/index.ts @@ -47,6 +47,7 @@ export { NewRowInfo, NewRowPosition, Pager, + PagerPageSize, PagingBase, RowDragging, RowDraggingTemplateData, diff --git a/packages/devextreme-angular/src/common/index.ts b/packages/devextreme-angular/src/common/index.ts index 906e4fc22e3c..5fdf9bb6cba1 100644 --- a/packages/devextreme-angular/src/common/index.ts +++ b/packages/devextreme-angular/src/common/index.ts @@ -29,9 +29,7 @@ export { Orientation, PageLoadMode, PageOrientation, - PagerAllPagesMode, PagerDisplayMode, - PagerPageSize, PatternRule, Position, PositionAlignment, diff --git a/packages/devextreme-angular/src/ui/data-grid/nested/pager.ts b/packages/devextreme-angular/src/ui/data-grid/nested/pager.ts index 601e683189ba..23e408ebbf18 100644 --- a/packages/devextreme-angular/src/ui/data-grid/nested/pager.ts +++ b/packages/devextreme-angular/src/ui/data-grid/nested/pager.ts @@ -14,7 +14,8 @@ import { -import { Mode, PagerDisplayMode, PagerPageSize } from 'devextreme/common'; +import { Mode, PagerDisplayMode } from 'devextreme/common'; +import { PagerPageSize } from 'devextreme/common/grids'; import { NestedOptionHost, diff --git a/packages/devextreme-angular/src/ui/nested/base/pager.ts b/packages/devextreme-angular/src/ui/nested/base/pager.ts index f530d345e02e..e07c95b8df29 100644 --- a/packages/devextreme-angular/src/ui/nested/base/pager.ts +++ b/packages/devextreme-angular/src/ui/nested/base/pager.ts @@ -5,7 +5,8 @@ import { Component, } from '@angular/core'; -import { Mode, PagerDisplayMode, PagerPageSize } from 'devextreme/common'; +import { Mode, PagerDisplayMode } from 'devextreme/common'; +import { PagerPageSize } from 'devextreme/common/grids'; @Component({ template: '' diff --git a/packages/devextreme-angular/src/ui/pager/index.ts b/packages/devextreme-angular/src/ui/pager/index.ts index b1baaddfb64f..8453e86d4085 100644 --- a/packages/devextreme-angular/src/ui/pager/index.ts +++ b/packages/devextreme-angular/src/ui/pager/index.ts @@ -20,7 +20,8 @@ import { } from '@angular/core'; -import { PagerAllPagesMode, PagerDisplayMode } from 'devextreme/common'; +import { PagerDisplayMode } from 'devextreme/common'; +import { PageSize } from 'devextreme/ui/pager'; import DxPager from 'devextreme/ui/pager'; @@ -88,10 +89,10 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange */ @Input() - get allowedPageSizes(): Array { + get allowedPageSizes(): Array { return this._getOption('allowedPageSizes'); } - set allowedPageSizes(value: Array) { + set allowedPageSizes(value: Array) { this._setOption('allowedPageSizes', value); } @@ -393,7 +394,7 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange * This member supports the internal infrastructure and is not intended to be used directly from your code. */ - @Output() allowedPageSizesChange: EventEmitter>; + @Output() allowedPageSizesChange: EventEmitter>; /** diff --git a/packages/devextreme-angular/src/ui/tree-list/nested/pager.ts b/packages/devextreme-angular/src/ui/tree-list/nested/pager.ts index b8a214bfba5d..8418acbb6bf4 100644 --- a/packages/devextreme-angular/src/ui/tree-list/nested/pager.ts +++ b/packages/devextreme-angular/src/ui/tree-list/nested/pager.ts @@ -14,7 +14,8 @@ import { -import { Mode, PagerDisplayMode, PagerPageSize } from 'devextreme/common'; +import { Mode, PagerDisplayMode } from 'devextreme/common'; +import { PagerPageSize } from 'devextreme/common/grids'; import { NestedOptionHost, diff --git a/packages/devextreme-react/src/common/grids.ts b/packages/devextreme-react/src/common/grids.ts index bb9a838c7a64..3c50f9be5a98 100644 --- a/packages/devextreme-react/src/common/grids.ts +++ b/packages/devextreme-react/src/common/grids.ts @@ -47,6 +47,7 @@ export { NewRowInfo, NewRowPosition, Pager, + PagerPageSize, PagingBase, RowDragging, RowDraggingTemplateData, diff --git a/packages/devextreme-react/src/common/index.ts b/packages/devextreme-react/src/common/index.ts index 4df8fc5d068b..4666af5cc51f 100644 --- a/packages/devextreme-react/src/common/index.ts +++ b/packages/devextreme-react/src/common/index.ts @@ -29,9 +29,7 @@ export { Orientation, PageLoadMode, PageOrientation, - PagerAllPagesMode, PagerDisplayMode, - PagerPageSize, PatternRule, Position, PositionAlignment, diff --git a/packages/devextreme-vue/src/common/grids.ts b/packages/devextreme-vue/src/common/grids.ts index bb9a838c7a64..3c50f9be5a98 100644 --- a/packages/devextreme-vue/src/common/grids.ts +++ b/packages/devextreme-vue/src/common/grids.ts @@ -47,6 +47,7 @@ export { NewRowInfo, NewRowPosition, Pager, + PagerPageSize, PagingBase, RowDragging, RowDraggingTemplateData, diff --git a/packages/devextreme-vue/src/common/index.ts b/packages/devextreme-vue/src/common/index.ts index 4df8fc5d068b..4666af5cc51f 100644 --- a/packages/devextreme-vue/src/common/index.ts +++ b/packages/devextreme-vue/src/common/index.ts @@ -29,9 +29,7 @@ export { Orientation, PageLoadMode, PageOrientation, - PagerAllPagesMode, PagerDisplayMode, - PagerPageSize, PatternRule, Position, PositionAlignment, diff --git a/packages/devextreme/js/__internal/pager/common/base_pager_props.ts b/packages/devextreme/js/__internal/pager/common/base_pager_props.ts index aa17c5591db5..01f76298569f 100644 --- a/packages/devextreme/js/__internal/pager/common/base_pager_props.ts +++ b/packages/devextreme/js/__internal/pager/common/base_pager_props.ts @@ -1,4 +1,5 @@ -import type { PagerAllPagesMode, PagerDisplayMode } from '@js/common'; +import type { PagerDisplayMode } from '@js/common'; +import type { PageSize } from '@js/ui/pager_types'; import messageLocalization from '../../../localization/message'; import type { EventCallback } from '../../core/r1/event_callback'; @@ -18,7 +19,7 @@ export interface BasePagerProps extends BaseWidgetProps { hasKnownLastPage?: boolean; pagesNavigatorVisible?: boolean | 'auto'; showPageSizeSelector?: boolean; - allowedPageSizes: (number | PagerAllPagesMode)[]; + allowedPageSizes: (number | PageSize)[]; rtlEnabled?: boolean; showNavigationButtons?: boolean; itemCount?: number; diff --git a/packages/devextreme/js/common.d.ts b/packages/devextreme/js/common.d.ts index 88918b72c69c..2111ff1d39be 100644 --- a/packages/devextreme/js/common.d.ts +++ b/packages/devextreme/js/common.d.ts @@ -844,18 +844,6 @@ export type VerticalEdge = 'bottom' | 'top'; */ export type PagerDisplayMode = 'adaptive' | 'compact' | 'full'; -/** - * @public - * @namespace DevExpress.common - */ -export type PagerAllPagesMode = 'all'; - -/** - * @public - * @namespace DevExpress.common - */ -export type PagerPageSize = 'all' | 'auto'; - /** * @docid * @hidden diff --git a/packages/devextreme/js/common/grids.d.ts b/packages/devextreme/js/common/grids.d.ts index 71c4a25bb080..7cc51545a85d 100644 --- a/packages/devextreme/js/common/grids.d.ts +++ b/packages/devextreme/js/common/grids.d.ts @@ -12,7 +12,6 @@ import { Sortable, SortOrder, ValidationRule, - PagerPageSize, BasePagerOptions, } from '../common'; @@ -2514,6 +2513,12 @@ export type Pager = BasePagerOptions & { visible?: boolean | Mode; }; +/** + * @public + * @namespace DevExpress.common.grids + */ +export type PagerPageSize = 'all' | 'auto'; + /** * @hidden * @docid diff --git a/packages/devextreme/js/ui/pager.d.ts b/packages/devextreme/js/ui/pager.d.ts index be4c8577e8ad..9e8cfa15de39 100644 --- a/packages/devextreme/js/ui/pager.d.ts +++ b/packages/devextreme/js/ui/pager.d.ts @@ -1,9 +1,13 @@ import Widget, { WidgetOptions } from './widget/ui.widget'; import { BasePagerOptions, - PagerAllPagesMode, } from '../common'; +/** + * @public + */ +export type PageSize = 'all'; + /** * @deprecated use Properties instead * @namespace DevExpress.ui @@ -36,7 +40,7 @@ export interface dxPagerOptions extends BasePagerOptions, WidgetOptions * @docid * @default [5, 10] */ - allowedPageSizes?: Array<(number | PagerAllPagesMode)>; + allowedPageSizes?: Array<(number | PageSize)>; } /** diff --git a/packages/devextreme/js/ui/pager_types.d.ts b/packages/devextreme/js/ui/pager_types.d.ts index 7176533b9dc9..f08911ffc9a2 100644 --- a/packages/devextreme/js/ui/pager_types.d.ts +++ b/packages/devextreme/js/ui/pager_types.d.ts @@ -1 +1 @@ -export { dxPagerOptions, Properties } from './pager'; +export { PageSize, dxPagerOptions, Properties } from './pager'; diff --git a/packages/devextreme/ts/aliases.d.ts b/packages/devextreme/ts/aliases.d.ts index 0615dfcb4cf1..b156ce688d42 100644 --- a/packages/devextreme/ts/aliases.d.ts +++ b/packages/devextreme/ts/aliases.d.ts @@ -397,8 +397,8 @@ declare module DevExpress.common.charts { export type NewRowPosition = DevExpress.common.grids.NewRowPosition; /** @deprecated Use DevExpress.common.PagerDisplayMode instead */ export type PagerDisplayMode = DevExpress.common.PagerDisplayMode; - /** @deprecated Use DevExpress.common.PagerPageSize instead */ - export type PagerPageSize = DevExpress.common.PagerPageSize; + /** @deprecated Use DevExpress.common.grids.PagerPageSize instead */ + export type PagerPageSize = DevExpress.common.grids.PagerPageSize; /** @deprecated Use DevExpress.common.grids.SelectedFilterOperation instead */ export type SelectedFilterOperation = DevExpress.common.grids.SelectedFilterOperation; /** @deprecated Use DevExpress.common.grids.SelectionColumnDisplayMode instead */ @@ -823,6 +823,4 @@ declare module DevExpress.ui.dxDiagram { declare module DevExpress.common.grids { /** @deprecated Use DevExpress.common.PagerDisplayMode instead */ export type PagerDisplayMode = DevExpress.common.PagerDisplayMode; - /** @deprecated Use DevExpress.common.PagerPageSize instead */ - export type PagerPageSize = DevExpress.common.PagerPageSize; } diff --git a/packages/devextreme/ts/dx.all.d.ts b/packages/devextreme/ts/dx.all.d.ts index 6b98ad15885b..f9e36eefec26 100644 --- a/packages/devextreme/ts/dx.all.d.ts +++ b/packages/devextreme/ts/dx.all.d.ts @@ -1341,6 +1341,7 @@ declare module DevExpress.common { }; /** * [descr:BasePagerOptions] + * @deprecated Attention! This type is for internal purposes only. If you used it previously, please submit a ticket to our {@link https://supportcenter.devexpress.com/ticket/create Support Center}. We will check if there is an alternative solution. */ export type BasePagerOptions = { /** @@ -1686,9 +1687,7 @@ declare module DevExpress.common { export type Orientation = 'horizontal' | 'vertical'; export type PageLoadMode = 'nextButton' | 'scrollBottom'; export type PageOrientation = 'portrait' | 'landscape'; - export type PagerAllPagesMode = 'all'; export type PagerDisplayMode = 'adaptive' | 'compact' | 'full'; - export type PagerPageSize = 'all' | 'auto'; /** * [descr:PatternRule] */ @@ -4332,6 +4331,7 @@ declare module DevExpress.common.grids { */ visible?: boolean | Mode; }; + export type PagerPageSize = 'all' | 'auto'; /** * [descr:PagingBase] * @deprecated Attention! This type is for internal purposes only. If you used it previously, please submit a ticket to our {@link https://supportcenter.devexpress.com/ticket/create Support Center}. We will check if there is an alternative solution. @@ -21783,6 +21783,7 @@ declare module DevExpress.ui { getPageCount(): number; } module dxPager { + export type PageSize = 'all'; export type Properties = dxPagerOptions; } /** @@ -21810,7 +21811,7 @@ declare module DevExpress.ui { /** * [descr:dxPagerOptions.allowedPageSizes] */ - allowedPageSizes?: Array; + allowedPageSizes?: Array; } /** * [descr:dxPivotGrid] From b445d6b445f7fbfde528faf4453218e2d592ccde Mon Sep 17 00:00:00 2001 From: ilyakhd <14272298+IlyaKhD@users.noreply.github.com> Date: Thu, 3 Oct 2024 21:20:50 +0300 Subject: [PATCH 26/38] Refactor PageSize type --- packages/devextreme-angular/src/ui/pager/index.ts | 7 +++---- packages/devextreme/js/ui/pager.d.ts | 5 +++-- packages/devextreme/ts/dx.all.d.ts | 4 ++-- 3 files changed, 8 insertions(+), 8 deletions(-) diff --git a/packages/devextreme-angular/src/ui/pager/index.ts b/packages/devextreme-angular/src/ui/pager/index.ts index 8453e86d4085..cae3bf185f90 100644 --- a/packages/devextreme-angular/src/ui/pager/index.ts +++ b/packages/devextreme-angular/src/ui/pager/index.ts @@ -21,7 +21,6 @@ import { import { PagerDisplayMode } from 'devextreme/common'; -import { PageSize } from 'devextreme/ui/pager'; import DxPager from 'devextreme/ui/pager'; @@ -89,10 +88,10 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange */ @Input() - get allowedPageSizes(): Array { + get allowedPageSizes(): Array { return this._getOption('allowedPageSizes'); } - set allowedPageSizes(value: Array) { + set allowedPageSizes(value: Array) { this._setOption('allowedPageSizes', value); } @@ -394,7 +393,7 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange * This member supports the internal infrastructure and is not intended to be used directly from your code. */ - @Output() allowedPageSizesChange: EventEmitter>; + @Output() allowedPageSizesChange: EventEmitter>; /** diff --git a/packages/devextreme/js/ui/pager.d.ts b/packages/devextreme/js/ui/pager.d.ts index 9e8cfa15de39..bc4950f422a0 100644 --- a/packages/devextreme/js/ui/pager.d.ts +++ b/packages/devextreme/js/ui/pager.d.ts @@ -6,7 +6,7 @@ import { /** * @public */ -export type PageSize = 'all'; +export type PageSize = number | 'all'; /** * @deprecated use Properties instead @@ -39,8 +39,9 @@ export interface dxPagerOptions extends BasePagerOptions, WidgetOptions /** * @docid * @default [5, 10] + * @type Array */ - allowedPageSizes?: Array<(number | PageSize)>; + allowedPageSizes?: Array; } /** diff --git a/packages/devextreme/ts/dx.all.d.ts b/packages/devextreme/ts/dx.all.d.ts index f9e36eefec26..6c6411857a80 100644 --- a/packages/devextreme/ts/dx.all.d.ts +++ b/packages/devextreme/ts/dx.all.d.ts @@ -21783,7 +21783,7 @@ declare module DevExpress.ui { getPageCount(): number; } module dxPager { - export type PageSize = 'all'; + export type PageSize = number | 'all'; export type Properties = dxPagerOptions; } /** @@ -21811,7 +21811,7 @@ declare module DevExpress.ui { /** * [descr:dxPagerOptions.allowedPageSizes] */ - allowedPageSizes?: Array; + allowedPageSizes?: Array; } /** * [descr:dxPivotGrid] From 3cc72dd43b485c52c5e59d51ad93c9617e09a7cd Mon Sep 17 00:00:00 2001 From: ilyakhd <14272298+IlyaKhD@users.noreply.github.com> Date: Thu, 3 Oct 2024 21:34:11 +0300 Subject: [PATCH 27/38] Rename PagerDisplayMode to DisplayMode --- packages/devextreme-angular/src/common/index.ts | 2 +- .../devextreme-angular/src/ui/data-grid/nested/pager.ts | 6 +++--- packages/devextreme-angular/src/ui/nested/base/pager.ts | 6 +++--- packages/devextreme-angular/src/ui/pager/index.ts | 8 ++++---- .../devextreme-angular/src/ui/tree-list/nested/pager.ts | 6 +++--- packages/devextreme-react/src/common/index.ts | 2 +- packages/devextreme-vue/src/common/index.ts | 2 +- .../js/__internal/pager/common/base_pager_props.ts | 4 ++-- packages/devextreme/js/__internal/pager/content.tsx | 4 ++-- packages/devextreme/js/common.d.ts | 4 ++-- packages/devextreme/ts/aliases.d.ts | 8 ++++---- packages/devextreme/ts/dx.all.d.ts | 4 ++-- 12 files changed, 28 insertions(+), 28 deletions(-) diff --git a/packages/devextreme-angular/src/common/index.ts b/packages/devextreme-angular/src/common/index.ts index 5fdf9bb6cba1..f2f3529049e2 100644 --- a/packages/devextreme-angular/src/common/index.ts +++ b/packages/devextreme-angular/src/common/index.ts @@ -10,6 +10,7 @@ export { DataStructure, DataType, Direction, + DisplayMode, DragDirection, Draggable, DragHighlight, @@ -29,7 +30,6 @@ export { Orientation, PageLoadMode, PageOrientation, - PagerDisplayMode, PatternRule, Position, PositionAlignment, diff --git a/packages/devextreme-angular/src/ui/data-grid/nested/pager.ts b/packages/devextreme-angular/src/ui/data-grid/nested/pager.ts index 23e408ebbf18..15ce83328560 100644 --- a/packages/devextreme-angular/src/ui/data-grid/nested/pager.ts +++ b/packages/devextreme-angular/src/ui/data-grid/nested/pager.ts @@ -14,7 +14,7 @@ import { -import { Mode, PagerDisplayMode } from 'devextreme/common'; +import { DisplayMode, Mode } from 'devextreme/common'; import { PagerPageSize } from 'devextreme/common/grids'; import { @@ -39,10 +39,10 @@ export class DxoDataGridPagerComponent extends NestedOption implements OnDestroy } @Input() - get displayMode(): PagerDisplayMode { + get displayMode(): DisplayMode { return this._getOption('displayMode'); } - set displayMode(value: PagerDisplayMode) { + set displayMode(value: DisplayMode) { this._setOption('displayMode', value); } diff --git a/packages/devextreme-angular/src/ui/nested/base/pager.ts b/packages/devextreme-angular/src/ui/nested/base/pager.ts index e07c95b8df29..974018feb34c 100644 --- a/packages/devextreme-angular/src/ui/nested/base/pager.ts +++ b/packages/devextreme-angular/src/ui/nested/base/pager.ts @@ -5,7 +5,7 @@ import { Component, } from '@angular/core'; -import { Mode, PagerDisplayMode } from 'devextreme/common'; +import { DisplayMode, Mode } from 'devextreme/common'; import { PagerPageSize } from 'devextreme/common/grids'; @Component({ @@ -19,10 +19,10 @@ export abstract class DxoPager extends NestedOption { this._setOption('allowedPageSizes', value); } - get displayMode(): PagerDisplayMode { + get displayMode(): DisplayMode { return this._getOption('displayMode'); } - set displayMode(value: PagerDisplayMode) { + set displayMode(value: DisplayMode) { this._setOption('displayMode', value); } diff --git a/packages/devextreme-angular/src/ui/pager/index.ts b/packages/devextreme-angular/src/ui/pager/index.ts index cae3bf185f90..9a4eacf3b226 100644 --- a/packages/devextreme-angular/src/ui/pager/index.ts +++ b/packages/devextreme-angular/src/ui/pager/index.ts @@ -20,7 +20,7 @@ import { } from '@angular/core'; -import { PagerDisplayMode } from 'devextreme/common'; +import { DisplayMode } from 'devextreme/common'; import DxPager from 'devextreme/ui/pager'; @@ -114,10 +114,10 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange */ @Input() - get displayMode(): PagerDisplayMode { + get displayMode(): DisplayMode { return this._getOption('displayMode'); } - set displayMode(value: PagerDisplayMode) { + set displayMode(value: DisplayMode) { this._setOption('displayMode', value); } @@ -407,7 +407,7 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange * This member supports the internal infrastructure and is not intended to be used directly from your code. */ - @Output() displayModeChange: EventEmitter; + @Output() displayModeChange: EventEmitter; /** diff --git a/packages/devextreme-angular/src/ui/tree-list/nested/pager.ts b/packages/devextreme-angular/src/ui/tree-list/nested/pager.ts index 8418acbb6bf4..b87c16aa8592 100644 --- a/packages/devextreme-angular/src/ui/tree-list/nested/pager.ts +++ b/packages/devextreme-angular/src/ui/tree-list/nested/pager.ts @@ -14,7 +14,7 @@ import { -import { Mode, PagerDisplayMode } from 'devextreme/common'; +import { DisplayMode, Mode } from 'devextreme/common'; import { PagerPageSize } from 'devextreme/common/grids'; import { @@ -39,10 +39,10 @@ export class DxoTreeListPagerComponent extends NestedOption implements OnDestroy } @Input() - get displayMode(): PagerDisplayMode { + get displayMode(): DisplayMode { return this._getOption('displayMode'); } - set displayMode(value: PagerDisplayMode) { + set displayMode(value: DisplayMode) { this._setOption('displayMode', value); } diff --git a/packages/devextreme-react/src/common/index.ts b/packages/devextreme-react/src/common/index.ts index 4666af5cc51f..2e97775a72f7 100644 --- a/packages/devextreme-react/src/common/index.ts +++ b/packages/devextreme-react/src/common/index.ts @@ -10,6 +10,7 @@ export { DataStructure, DataType, Direction, + DisplayMode, DragDirection, Draggable, DragHighlight, @@ -29,7 +30,6 @@ export { Orientation, PageLoadMode, PageOrientation, - PagerDisplayMode, PatternRule, Position, PositionAlignment, diff --git a/packages/devextreme-vue/src/common/index.ts b/packages/devextreme-vue/src/common/index.ts index 4666af5cc51f..2e97775a72f7 100644 --- a/packages/devextreme-vue/src/common/index.ts +++ b/packages/devextreme-vue/src/common/index.ts @@ -10,6 +10,7 @@ export { DataStructure, DataType, Direction, + DisplayMode, DragDirection, Draggable, DragHighlight, @@ -29,7 +30,6 @@ export { Orientation, PageLoadMode, PageOrientation, - PagerDisplayMode, PatternRule, Position, PositionAlignment, diff --git a/packages/devextreme/js/__internal/pager/common/base_pager_props.ts b/packages/devextreme/js/__internal/pager/common/base_pager_props.ts index 01f76298569f..abb88e9b4502 100644 --- a/packages/devextreme/js/__internal/pager/common/base_pager_props.ts +++ b/packages/devextreme/js/__internal/pager/common/base_pager_props.ts @@ -1,4 +1,4 @@ -import type { PagerDisplayMode } from '@js/common'; +import type { DisplayMode } from '@js/common'; import type { PageSize } from '@js/ui/pager_types'; import messageLocalization from '../../../localization/message'; @@ -11,7 +11,7 @@ export interface BasePagerProps extends BaseWidgetProps { showInfo?: boolean; infoText?: string; lightModeEnabled?: boolean; - displayMode?: PagerDisplayMode; + displayMode?: DisplayMode; maxPagesCount: number; pageCount: number; pagesCountText?: string; diff --git a/packages/devextreme/js/__internal/pager/content.tsx b/packages/devextreme/js/__internal/pager/content.tsx index f5ab7ebfe526..cfac37eb3ba8 100644 --- a/packages/devextreme/js/__internal/pager/content.tsx +++ b/packages/devextreme/js/__internal/pager/content.tsx @@ -2,7 +2,7 @@ /* eslint-disable @typescript-eslint/explicit-module-boundary-types */ import { InfernoComponent, InfernoEffect } from '@devextreme/runtime/inferno'; import type { RefObject } from '@devextreme-generator/declarations'; -import type { PagerDisplayMode } from '@js/common'; +import type { DisplayMode } from '@js/common'; import { createRef as infernoCreateRef } from 'inferno'; import { registerKeyboardAction } from '../../ui/shared/accessibility'; @@ -118,7 +118,7 @@ export class PagerContent extends InfernoComponent { return this.props.pageSize !== 0; } - getNormalizedDisplayMode(): PagerDisplayMode { + getNormalizedDisplayMode(): DisplayMode { const { displayMode, lightModeEnabled, diff --git a/packages/devextreme/js/common.d.ts b/packages/devextreme/js/common.d.ts index 2111ff1d39be..e4c2e9405b97 100644 --- a/packages/devextreme/js/common.d.ts +++ b/packages/devextreme/js/common.d.ts @@ -842,7 +842,7 @@ export type VerticalEdge = 'bottom' | 'top'; * @public * @namespace DevExpress.common */ -export type PagerDisplayMode = 'adaptive' | 'compact' | 'full'; +export type DisplayMode = 'adaptive' | 'compact' | 'full'; /** * @docid @@ -855,7 +855,7 @@ export type BasePagerOptions = { * @public * @default "adaptive" */ - displayMode?: PagerDisplayMode; + displayMode?: DisplayMode; /** * @docid * @public diff --git a/packages/devextreme/ts/aliases.d.ts b/packages/devextreme/ts/aliases.d.ts index b156ce688d42..d75d552c5088 100644 --- a/packages/devextreme/ts/aliases.d.ts +++ b/packages/devextreme/ts/aliases.d.ts @@ -395,8 +395,8 @@ declare module DevExpress.common.charts { export type GroupExpandMode = DevExpress.common.grids.GroupExpandMode; /** @deprecated Use DevExpress.common.grids.NewRowPosition instead */ export type NewRowPosition = DevExpress.common.grids.NewRowPosition; - /** @deprecated Use DevExpress.common.PagerDisplayMode instead */ - export type PagerDisplayMode = DevExpress.common.PagerDisplayMode; + /** @deprecated Use DevExpress.common.DisplayMode instead */ + export type PagerDisplayMode = DevExpress.common.DisplayMode; /** @deprecated Use DevExpress.common.grids.PagerPageSize instead */ export type PagerPageSize = DevExpress.common.grids.PagerPageSize; /** @deprecated Use DevExpress.common.grids.SelectedFilterOperation instead */ @@ -821,6 +821,6 @@ declare module DevExpress.ui.dxDiagram { // 24.2 declare module DevExpress.common.grids { - /** @deprecated Use DevExpress.common.PagerDisplayMode instead */ - export type PagerDisplayMode = DevExpress.common.PagerDisplayMode; + /** @deprecated Use DevExpress.common.DisplayMode instead */ + export type PagerDisplayMode = DevExpress.common.DisplayMode; } diff --git a/packages/devextreme/ts/dx.all.d.ts b/packages/devextreme/ts/dx.all.d.ts index 6c6411857a80..45acf3adb9c4 100644 --- a/packages/devextreme/ts/dx.all.d.ts +++ b/packages/devextreme/ts/dx.all.d.ts @@ -1347,7 +1347,7 @@ declare module DevExpress.common { /** * [descr:BasePagerOptions.displayMode] */ - displayMode?: PagerDisplayMode; + displayMode?: DisplayMode; /** * [descr:BasePagerOptions.infoText] */ @@ -1439,6 +1439,7 @@ declare module DevExpress.common { | 'object' | 'datetime'; export type Direction = 'bottom' | 'left' | 'right' | 'top'; + export type DisplayMode = 'adaptive' | 'compact' | 'full'; export type DragDirection = 'both' | 'horizontal' | 'vertical'; export type Draggable = DevExpress.core.OmitInternal; @@ -1687,7 +1688,6 @@ declare module DevExpress.common { export type Orientation = 'horizontal' | 'vertical'; export type PageLoadMode = 'nextButton' | 'scrollBottom'; export type PageOrientation = 'portrait' | 'landscape'; - export type PagerDisplayMode = 'adaptive' | 'compact' | 'full'; /** * [descr:PatternRule] */ From 1ee1588938960542ab54aa4e0a7bba73e63e870a Mon Sep 17 00:00:00 2001 From: ilyakhd <14272298+IlyaKhD@users.noreply.github.com> Date: Thu, 3 Oct 2024 22:15:52 +0300 Subject: [PATCH 28/38] Add missing re-exports for backward compatipility --- packages/devextreme/js/common/grids.d.ts | 7 +++++++ packages/devextreme/js/ui/pager.d.ts | 4 ++++ packages/devextreme/js/ui/pager_types.d.ts | 2 +- packages/devextreme/js/ui/tree_list.d.ts | 2 ++ packages/devextreme/js/ui/tree_list_types.d.ts | 2 ++ 5 files changed, 16 insertions(+), 1 deletion(-) diff --git a/packages/devextreme/js/common/grids.d.ts b/packages/devextreme/js/common/grids.d.ts index 7cc51545a85d..d3bdd006f793 100644 --- a/packages/devextreme/js/common/grids.d.ts +++ b/packages/devextreme/js/common/grids.d.ts @@ -1,5 +1,6 @@ import { DataType, + DisplayMode, DragDirection, Draggable, DragHighlight, @@ -2513,6 +2514,12 @@ export type Pager = BasePagerOptions & { visible?: boolean | Mode; }; +/** + * @deprecated Use DisplayMode from /common instead + * @namespace DevExpress.common.grids + */ +export type PagerDisplayMode = DisplayMode; + /** * @public * @namespace DevExpress.common.grids diff --git a/packages/devextreme/js/ui/pager.d.ts b/packages/devextreme/js/ui/pager.d.ts index bc4950f422a0..d7d25c686f20 100644 --- a/packages/devextreme/js/ui/pager.d.ts +++ b/packages/devextreme/js/ui/pager.d.ts @@ -3,6 +3,10 @@ import { BasePagerOptions, } from '../common'; +export { + DisplayMode, +} from '../common'; + /** * @public */ diff --git a/packages/devextreme/js/ui/pager_types.d.ts b/packages/devextreme/js/ui/pager_types.d.ts index f08911ffc9a2..21fb07375088 100644 --- a/packages/devextreme/js/ui/pager_types.d.ts +++ b/packages/devextreme/js/ui/pager_types.d.ts @@ -1 +1 @@ -export { PageSize, dxPagerOptions, Properties } from './pager'; +export { DisplayMode, PageSize, dxPagerOptions, Properties } from './pager'; diff --git a/packages/devextreme/js/ui/tree_list.d.ts b/packages/devextreme/js/ui/tree_list.d.ts index 77ee713d1959..97ac3423f925 100644 --- a/packages/devextreme/js/ui/tree_list.d.ts +++ b/packages/devextreme/js/ui/tree_list.d.ts @@ -109,6 +109,7 @@ export interface CellInfo { } export { + DisplayMode, SearchMode, } from '../common'; @@ -147,6 +148,7 @@ export { LoadPanel, NewRowPosition, Pager, + PagerPageSize, RowDraggingTemplateData, SearchPanel, SelectedFilterOperation, diff --git a/packages/devextreme/js/ui/tree_list_types.d.ts b/packages/devextreme/js/ui/tree_list_types.d.ts index 9bc44b9a9626..9f7c7aa33b8d 100644 --- a/packages/devextreme/js/ui/tree_list_types.d.ts +++ b/packages/devextreme/js/ui/tree_list_types.d.ts @@ -1,4 +1,5 @@ export { + DisplayMode, SearchMode, ApplyFilterMode, ColumnChooser, @@ -34,6 +35,7 @@ export { LoadPanel, NewRowPosition, Pager, + PagerPageSize, RowDraggingTemplateData, SearchPanel, SelectedFilterOperation, From 59bbc0eaf57b882eee85f6a673d3f9f54b8cc4f7 Mon Sep 17 00:00:00 2001 From: ilyakhd <14272298+IlyaKhD@users.noreply.github.com> Date: Thu, 3 Oct 2024 22:27:03 +0300 Subject: [PATCH 29/38] Rename BasePagerOptions to PagerBaseOptions --- .../devextreme-angular/src/common/index.ts | 2 +- .../devextreme-angular/src/ui/pager/index.ts | 12 ++-- packages/devextreme-react/src/common/index.ts | 2 +- packages/devextreme-vue/src/common/index.ts | 2 +- packages/devextreme/js/common.d.ts | 2 +- packages/devextreme/js/common/grids.d.ts | 6 +- packages/devextreme/js/ui/pager.d.ts | 6 +- packages/devextreme/ts/dx.all.d.ts | 64 +++++++++---------- 8 files changed, 48 insertions(+), 48 deletions(-) diff --git a/packages/devextreme-angular/src/common/index.ts b/packages/devextreme-angular/src/common/index.ts index f2f3529049e2..4c672e377702 100644 --- a/packages/devextreme-angular/src/common/index.ts +++ b/packages/devextreme-angular/src/common/index.ts @@ -1,7 +1,6 @@ export { ApplyValueMode, AsyncRule, - BasePagerOptions, ButtonStyle, ButtonType, CompareRule, @@ -30,6 +29,7 @@ export { Orientation, PageLoadMode, PageOrientation, + PagerBaseOptions, PatternRule, Position, PositionAlignment, diff --git a/packages/devextreme-angular/src/ui/pager/index.ts b/packages/devextreme-angular/src/ui/pager/index.ts index 9a4eacf3b226..a2c818b62421 100644 --- a/packages/devextreme-angular/src/ui/pager/index.ts +++ b/packages/devextreme-angular/src/ui/pager/index.ts @@ -110,7 +110,7 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange /** - * [descr:BasePagerOptions.displayMode] + * [descr:PagerBaseOptions.displayMode] */ @Input() @@ -188,7 +188,7 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange /** - * [descr:BasePagerOptions.infoText] + * [descr:PagerBaseOptions.infoText] */ @Input() @@ -214,7 +214,7 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange /** - * [descr:BasePagerOptions.label] + * [descr:PagerBaseOptions.label] */ @Input() @@ -266,7 +266,7 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange /** - * [descr:BasePagerOptions.showInfo] + * [descr:PagerBaseOptions.showInfo] */ @Input() @@ -279,7 +279,7 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange /** - * [descr:BasePagerOptions.showNavigationButtons] + * [descr:PagerBaseOptions.showNavigationButtons] */ @Input() @@ -292,7 +292,7 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange /** - * [descr:BasePagerOptions.showPageSizeSelector] + * [descr:PagerBaseOptions.showPageSizeSelector] */ @Input() diff --git a/packages/devextreme-react/src/common/index.ts b/packages/devextreme-react/src/common/index.ts index 2e97775a72f7..692639146c3a 100644 --- a/packages/devextreme-react/src/common/index.ts +++ b/packages/devextreme-react/src/common/index.ts @@ -1,7 +1,6 @@ export { ApplyValueMode, AsyncRule, - BasePagerOptions, ButtonStyle, ButtonType, CompareRule, @@ -30,6 +29,7 @@ export { Orientation, PageLoadMode, PageOrientation, + PagerBaseOptions, PatternRule, Position, PositionAlignment, diff --git a/packages/devextreme-vue/src/common/index.ts b/packages/devextreme-vue/src/common/index.ts index 2e97775a72f7..692639146c3a 100644 --- a/packages/devextreme-vue/src/common/index.ts +++ b/packages/devextreme-vue/src/common/index.ts @@ -1,7 +1,6 @@ export { ApplyValueMode, AsyncRule, - BasePagerOptions, ButtonStyle, ButtonType, CompareRule, @@ -30,6 +29,7 @@ export { Orientation, PageLoadMode, PageOrientation, + PagerBaseOptions, PatternRule, Position, PositionAlignment, diff --git a/packages/devextreme/js/common.d.ts b/packages/devextreme/js/common.d.ts index e4c2e9405b97..968ce46f85e1 100644 --- a/packages/devextreme/js/common.d.ts +++ b/packages/devextreme/js/common.d.ts @@ -849,7 +849,7 @@ export type DisplayMode = 'adaptive' | 'compact' | 'full'; * @hidden * @namespace DevExpress.common */ -export type BasePagerOptions = { +export type PagerBaseOptions = { /** * @docid * @public diff --git a/packages/devextreme/js/common/grids.d.ts b/packages/devextreme/js/common/grids.d.ts index d3bdd006f793..44ba31a02412 100644 --- a/packages/devextreme/js/common/grids.d.ts +++ b/packages/devextreme/js/common/grids.d.ts @@ -13,7 +13,7 @@ import { Sortable, SortOrder, ValidationRule, - BasePagerOptions, + PagerBaseOptions, } from '../common'; import { @@ -2495,10 +2495,10 @@ export type NewRowPosition = 'first' | 'last' | 'pageBottom' | 'pageTop' | 'view /** * @docid * @public - * @inherits BasePagerOptions + * @inherits PagerBaseOptions * @namespace DevExpress.common.grids */ -export type Pager = BasePagerOptions & { +export type Pager = PagerBaseOptions & { /** * @docid * @public diff --git a/packages/devextreme/js/ui/pager.d.ts b/packages/devextreme/js/ui/pager.d.ts index d7d25c686f20..f143990db4d6 100644 --- a/packages/devextreme/js/ui/pager.d.ts +++ b/packages/devextreme/js/ui/pager.d.ts @@ -1,6 +1,6 @@ import Widget, { WidgetOptions } from './widget/ui.widget'; import { - BasePagerOptions, + PagerBaseOptions, } from '../common'; export { @@ -17,9 +17,9 @@ export type PageSize = number | 'all'; * @namespace DevExpress.ui * @public * @docid - * @inherits BasePagerOptions + * @inherits PagerBaseOptions */ -export interface dxPagerOptions extends BasePagerOptions, WidgetOptions { +export interface dxPagerOptions extends PagerBaseOptions, WidgetOptions { /** * @docid * @fires Properties.onOptionChanged diff --git a/packages/devextreme/ts/dx.all.d.ts b/packages/devextreme/ts/dx.all.d.ts index 45acf3adb9c4..2ad247c6d68e 100644 --- a/packages/devextreme/ts/dx.all.d.ts +++ b/packages/devextreme/ts/dx.all.d.ts @@ -1339,36 +1339,6 @@ declare module DevExpress.common { */ validationCallback?: (options: ValidationCallbackData) => PromiseLike; }; - /** - * [descr:BasePagerOptions] - * @deprecated Attention! This type is for internal purposes only. If you used it previously, please submit a ticket to our {@link https://supportcenter.devexpress.com/ticket/create Support Center}. We will check if there is an alternative solution. - */ - export type BasePagerOptions = { - /** - * [descr:BasePagerOptions.displayMode] - */ - displayMode?: DisplayMode; - /** - * [descr:BasePagerOptions.infoText] - */ - infoText?: string; - /** - * [descr:BasePagerOptions.showInfo] - */ - showInfo?: boolean; - /** - * [descr:BasePagerOptions.showNavigationButtons] - */ - showNavigationButtons?: boolean; - /** - * [descr:BasePagerOptions.showPageSizeSelector] - */ - showPageSizeSelector?: boolean; - /** - * [descr:BasePagerOptions.label] - */ - label?: string; - }; export type ButtonStyle = 'text' | 'outlined' | 'contained'; export type ButtonType = 'danger' | 'default' | 'normal' | 'success'; /** @@ -1688,6 +1658,36 @@ declare module DevExpress.common { export type Orientation = 'horizontal' | 'vertical'; export type PageLoadMode = 'nextButton' | 'scrollBottom'; export type PageOrientation = 'portrait' | 'landscape'; + /** + * [descr:PagerBaseOptions] + * @deprecated Attention! This type is for internal purposes only. If you used it previously, please submit a ticket to our {@link https://supportcenter.devexpress.com/ticket/create Support Center}. We will check if there is an alternative solution. + */ + export type PagerBaseOptions = { + /** + * [descr:PagerBaseOptions.displayMode] + */ + displayMode?: DisplayMode; + /** + * [descr:PagerBaseOptions.infoText] + */ + infoText?: string; + /** + * [descr:PagerBaseOptions.showInfo] + */ + showInfo?: boolean; + /** + * [descr:PagerBaseOptions.showNavigationButtons] + */ + showNavigationButtons?: boolean; + /** + * [descr:PagerBaseOptions.showPageSizeSelector] + */ + showPageSizeSelector?: boolean; + /** + * [descr:PagerBaseOptions.label] + */ + label?: string; + }; /** * [descr:PatternRule] */ @@ -4320,7 +4320,7 @@ declare module DevExpress.common.grids { /** * [descr:Pager] */ - export type Pager = BasePagerOptions & { + export type Pager = PagerBaseOptions & { /** * [descr:Pager.allowedPageSizes] */ @@ -21791,7 +21791,7 @@ declare module DevExpress.ui { * @deprecated [depNote:dxPagerOptions] */ export interface dxPagerOptions - extends DevExpress.common.BasePagerOptions, + extends DevExpress.common.PagerBaseOptions, WidgetOptions { /** * [descr:dxPagerOptions.pageIndex] From 77f04b6a508811629e59d1b4db97ad9e58e1468e Mon Sep 17 00:00:00 2001 From: ilyakhd <14272298+IlyaKhD@users.noreply.github.com> Date: Thu, 3 Oct 2024 23:00:27 +0300 Subject: [PATCH 30/38] Partially rename dxPager to dxPagination (types only) --- packages/devextreme-angular/src/index.ts | 2 +- packages/devextreme-angular/src/ui/all.ts | 6 +-- .../src/ui/{pager => pagination}/index.ts | 30 +++++++-------- .../ui/{pager => pagination}/ng-package.json | 0 packages/devextreme-react/src/index.ts | 2 +- .../src/{pager.ts => pagination.ts} | 30 +++++++-------- packages/devextreme-vue/src/index.ts | 2 +- .../src/{pager.ts => pagination.ts} | 20 +++++----- .../devextreme/js/integration/jquery.d.ts | 12 +++--- packages/devextreme/js/ui/pager.d.ts | 8 ++-- packages/devextreme/js/ui/pager_types.d.ts | 7 +++- packages/devextreme/ts/dx.all.d.ts | 38 +++++++++---------- 12 files changed, 81 insertions(+), 76 deletions(-) rename packages/devextreme-angular/src/ui/{pager => pagination}/index.ts (95%) rename packages/devextreme-angular/src/ui/{pager => pagination}/ng-package.json (100%) rename packages/devextreme-react/src/{pager.ts => pagination.ts} (66%) rename packages/devextreme-vue/src/{pager.ts => pagination.ts} (85%) diff --git a/packages/devextreme-angular/src/index.ts b/packages/devextreme-angular/src/index.ts index 51fde0be72a0..15285133dca8 100644 --- a/packages/devextreme-angular/src/index.ts +++ b/packages/devextreme-angular/src/index.ts @@ -44,7 +44,7 @@ export { DxMapComponent, DxMapModule } from 'devextreme-angular/ui/map'; export { DxMenuComponent, DxMenuModule } from 'devextreme-angular/ui/menu'; export { DxMultiViewComponent, DxMultiViewModule } from 'devextreme-angular/ui/multi-view'; export { DxNumberBoxComponent, DxNumberBoxModule } from 'devextreme-angular/ui/number-box'; -export { DxPagerComponent, DxPagerModule } from 'devextreme-angular/ui/pager'; +export { DxPaginationComponent, DxPaginationModule } from 'devextreme-angular/ui/pagination'; export { DxPieChartComponent, DxPieChartModule } from 'devextreme-angular/ui/pie-chart'; export { DxPivotGridComponent, DxPivotGridModule } from 'devextreme-angular/ui/pivot-grid'; export { DxPivotGridFieldChooserComponent, DxPivotGridFieldChooserModule } from 'devextreme-angular/ui/pivot-grid-field-chooser'; diff --git a/packages/devextreme-angular/src/ui/all.ts b/packages/devextreme-angular/src/ui/all.ts index dee1c8608a77..7bf2dc159c06 100644 --- a/packages/devextreme-angular/src/ui/all.ts +++ b/packages/devextreme-angular/src/ui/all.ts @@ -40,7 +40,7 @@ import { DxMapModule } from 'devextreme-angular/ui/map'; import { DxMenuModule } from 'devextreme-angular/ui/menu'; import { DxMultiViewModule } from 'devextreme-angular/ui/multi-view'; import { DxNumberBoxModule } from 'devextreme-angular/ui/number-box'; -import { DxPagerModule } from 'devextreme-angular/ui/pager'; +import { DxPaginationModule } from 'devextreme-angular/ui/pagination'; import { DxPieChartModule } from 'devextreme-angular/ui/pie-chart'; import { DxPivotGridModule } from 'devextreme-angular/ui/pivot-grid'; import { DxPivotGridFieldChooserModule } from 'devextreme-angular/ui/pivot-grid-field-chooser'; @@ -125,7 +125,7 @@ import { DxTemplateModule } from 'devextreme-angular/core'; DxMenuModule, DxMultiViewModule, DxNumberBoxModule, - DxPagerModule, + DxPaginationModule, DxPieChartModule, DxPivotGridModule, DxPivotGridFieldChooserModule, @@ -209,7 +209,7 @@ import { DxTemplateModule } from 'devextreme-angular/core'; DxMenuModule, DxMultiViewModule, DxNumberBoxModule, - DxPagerModule, + DxPaginationModule, DxPieChartModule, DxPivotGridModule, DxPivotGridFieldChooserModule, diff --git a/packages/devextreme-angular/src/ui/pager/index.ts b/packages/devextreme-angular/src/ui/pagination/index.ts similarity index 95% rename from packages/devextreme-angular/src/ui/pager/index.ts rename to packages/devextreme-angular/src/ui/pagination/index.ts index a2c818b62421..7aaef7b2fbf4 100644 --- a/packages/devextreme-angular/src/ui/pager/index.ts +++ b/packages/devextreme-angular/src/ui/pagination/index.ts @@ -22,7 +22,7 @@ import { import { DisplayMode } from 'devextreme/common'; -import DxPager from 'devextreme/ui/pager'; +import DxPagination from 'devextreme/ui/pager'; import { @@ -41,11 +41,11 @@ import { /** - * [descr:dxPager] + * [descr:dxPagination] */ @Component({ - selector: 'dx-pager', + selector: 'dx-pagination', template: '', providers: [ DxTemplateHost, @@ -54,8 +54,8 @@ import { IterableDifferHelper ] }) -export class DxPagerComponent extends DxComponent implements OnDestroy, OnChanges, DoCheck { - instance: DxPager = null; +export class DxPaginationComponent extends DxComponent implements OnDestroy, OnChanges, DoCheck { + instance: DxPagination = null; /** * [descr:WidgetOptions.accessKey] @@ -84,7 +84,7 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange /** - * [descr:dxPagerOptions.allowedPageSizes] + * [descr:dxPaginationOptions.allowedPageSizes] */ @Input() @@ -201,7 +201,7 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange /** - * [descr:dxPagerOptions.itemCount] + * [descr:dxPaginationOptions.itemCount] */ @Input() @@ -227,7 +227,7 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange /** - * [descr:dxPagerOptions.pageIndex] + * [descr:dxPaginationOptions.pageIndex] */ @Input() @@ -240,7 +240,7 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange /** - * [descr:dxPagerOptions.pageSize] + * [descr:dxPaginationOptions.pageSize] */ @Input() @@ -579,7 +579,7 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange protected _createInstance(element, options) { - return new DxPager(element, options); + return new DxPagination(element, options); } @@ -621,16 +621,16 @@ export class DxPagerComponent extends DxComponent implements OnDestroy, OnChange DxTemplateModule ], declarations: [ - DxPagerComponent + DxPaginationComponent ], exports: [ - DxPagerComponent, + DxPaginationComponent, DxTemplateModule ] }) -export class DxPagerModule { } +export class DxPaginationModule { } -import type * as DxPagerTypes from "devextreme/ui/pager_types"; -export { DxPagerTypes }; +import type * as DxPaginationTypes from "devextreme/ui/pager_types"; +export { DxPaginationTypes }; diff --git a/packages/devextreme-angular/src/ui/pager/ng-package.json b/packages/devextreme-angular/src/ui/pagination/ng-package.json similarity index 100% rename from packages/devextreme-angular/src/ui/pager/ng-package.json rename to packages/devextreme-angular/src/ui/pagination/ng-package.json diff --git a/packages/devextreme-react/src/index.ts b/packages/devextreme-react/src/index.ts index cd42c129b48a..7854d6a05322 100644 --- a/packages/devextreme-react/src/index.ts +++ b/packages/devextreme-react/src/index.ts @@ -40,7 +40,7 @@ export { Map } from "./map"; export { Menu } from "./menu"; export { MultiView } from "./multi-view"; export { NumberBox } from "./number-box"; -export { Pager } from "./pager"; +export { Pagination } from "./pagination"; export { PieChart } from "./pie-chart"; export { PivotGrid } from "./pivot-grid"; export { PivotGridFieldChooser } from "./pivot-grid-field-chooser"; diff --git a/packages/devextreme-react/src/pager.ts b/packages/devextreme-react/src/pagination.ts similarity index 66% rename from packages/devextreme-react/src/pager.ts rename to packages/devextreme-react/src/pagination.ts index afb0ecb1e114..00634fad608a 100644 --- a/packages/devextreme-react/src/pager.ts +++ b/packages/devextreme-react/src/pagination.ts @@ -1,26 +1,26 @@ "use client" import * as React from "react"; import { memo, forwardRef, useImperativeHandle, useRef, useMemo, ForwardedRef, Ref, ReactElement } from "react"; -import dxPager, { +import dxPagination, { Properties } from "devextreme/ui/pager"; import { Component as BaseComponent, IHtmlOptions, ComponentRef } from "./core/component"; -type IPagerOptions = React.PropsWithChildren void; onPageSizeChange?: (value: number) => void; }> -interface PagerRef { - instance: () => dxPager; +interface PaginationRef { + instance: () => dxPagination; } -const Pager = memo( +const Pagination = memo( forwardRef( - (props: React.PropsWithChildren, ref: ForwardedRef) => { + (props: React.PropsWithChildren, ref: ForwardedRef) => { const baseRef = useRef(null); useImperativeHandle(ref, () => ( @@ -40,8 +40,8 @@ const Pager = memo( }), []); return ( - React.createElement(BaseComponent>, { - WidgetClass: dxPager, + React.createElement(BaseComponent>, { + WidgetClass: dxPagination, ref: baseRef, subscribableOptions, independentEvents, @@ -51,13 +51,13 @@ const Pager = memo( ); }, ), -) as (props: React.PropsWithChildren & { ref?: Ref }) => ReactElement | null; -export default Pager; +) as (props: React.PropsWithChildren & { ref?: Ref }) => ReactElement | null; +export default Pagination; export { - Pager, - IPagerOptions, - PagerRef + Pagination, + IPaginationOptions, + PaginationRef }; -import type * as PagerTypes from 'devextreme/ui/pager_types'; -export { PagerTypes }; +import type * as PaginationTypes from 'devextreme/ui/pager_types'; +export { PaginationTypes }; diff --git a/packages/devextreme-vue/src/index.ts b/packages/devextreme-vue/src/index.ts index aad924ccda58..ab1ec1f3428a 100644 --- a/packages/devextreme-vue/src/index.ts +++ b/packages/devextreme-vue/src/index.ts @@ -39,7 +39,7 @@ export { DxMap } from "./map"; export { DxMenu } from "./menu"; export { DxMultiView } from "./multi-view"; export { DxNumberBox } from "./number-box"; -export { DxPager } from "./pager"; +export { DxPagination } from "./pagination"; export { DxPieChart } from "./pie-chart"; export { DxPivotGrid } from "./pivot-grid"; export { DxPivotGridFieldChooser } from "./pivot-grid-field-chooser"; diff --git a/packages/devextreme-vue/src/pager.ts b/packages/devextreme-vue/src/pagination.ts similarity index 85% rename from packages/devextreme-vue/src/pager.ts rename to packages/devextreme-vue/src/pagination.ts index 15c561e18ecf..6735f1afe405 100644 --- a/packages/devextreme-vue/src/pager.ts +++ b/packages/devextreme-vue/src/pagination.ts @@ -1,4 +1,4 @@ -import Pager, { Properties } from "devextreme/ui/pager"; +import Pagination, { Properties } from "devextreme/ui/pager"; import { defineComponent } from "vue"; import { prepareComponentConfig } from "./core/index"; @@ -31,8 +31,8 @@ type AccessibleOptions = Pick; -interface DxPager extends AccessibleOptions { - readonly instance?: Pager; +interface DxPagination extends AccessibleOptions { + readonly instance?: Pagination; } const componentConfig = { @@ -95,23 +95,23 @@ const componentConfig = { "update:width": null, }, computed: { - instance(): Pager { + instance(): Pagination { return (this as any).$_instance; } }, beforeCreate() { - (this as any).$_WidgetClass = Pager; + (this as any).$_WidgetClass = Pagination; (this as any).$_hasAsyncTemplate = true; } }; prepareComponentConfig(componentConfig); -const DxPager = defineComponent(componentConfig); +const DxPagination = defineComponent(componentConfig); -export default DxPager; +export default DxPagination; export { - DxPager + DxPagination }; -import type * as DxPagerTypes from "devextreme/ui/pager_types"; -export { DxPagerTypes }; +import type * as DxPaginationTypes from "devextreme/ui/pager_types"; +export { DxPaginationTypes }; diff --git a/packages/devextreme/js/integration/jquery.d.ts b/packages/devextreme/js/integration/jquery.d.ts index ddea7ab7df4a..206d3d8cf2f3 100644 --- a/packages/devextreme/js/integration/jquery.d.ts +++ b/packages/devextreme/js/integration/jquery.d.ts @@ -33,7 +33,7 @@ import dxMap, { Properties as MapProperties } from '../ui/map'; import dxMenu, { Properties as MenuProperties } from '../ui/menu'; import dxMultiView, { Properties as MultiViewProperties } from '../ui/multi_view'; import dxNumberBox, { Properties as NumberBoxProperties } from '../ui/number_box'; -import dxPager, { Properties as PagerProperties } from '../ui/pager'; +import dxPagination, { Properties as PagerProperties } from '../ui/pager'; import dxPivotGrid, { Properties as PivotGridProperties } from '../ui/pivot_grid'; import dxPivotGridFieldChooser, { Properties as PivotGridFieldChooserProperties } from '../ui/pivot_grid_field_chooser'; import dxPopover, { Properties as PopoverProperties } from '../ui/popover'; @@ -354,11 +354,11 @@ declare global { dxNumberBox(options: string): any; dxNumberBox(options: string, ...params: any[]): any; - dxPager(): JQuery; - dxPager(options: 'instance'): dxPager; - dxPager(options: PagerProperties): JQuery; - dxPager(options: string): any; - dxPager(options: string, ...params: any[]): any; + dxPagination(): JQuery; + dxPagination(options: 'instance'): dxPagination; + dxPagination(options: PagerProperties): JQuery; + dxPagination(options: string): any; + dxPagination(options: string, ...params: any[]): any; dxPieChart(): JQuery; dxPieChart(options: 'instance'): dxPieChart; diff --git a/packages/devextreme/js/ui/pager.d.ts b/packages/devextreme/js/ui/pager.d.ts index f143990db4d6..7841ff35bce9 100644 --- a/packages/devextreme/js/ui/pager.d.ts +++ b/packages/devextreme/js/ui/pager.d.ts @@ -19,7 +19,7 @@ export type PageSize = number | 'all'; * @docid * @inherits PagerBaseOptions */ -export interface dxPagerOptions extends PagerBaseOptions, WidgetOptions { +export interface dxPaginationOptions extends PagerBaseOptions, WidgetOptions { /** * @docid * @fires Properties.onOptionChanged @@ -53,9 +53,9 @@ export interface dxPagerOptions extends PagerBaseOptions, WidgetOptions * @namespace DevExpress.ui * @public * @inherits Widget - * @options dxPagerOptions + * @options dxPaginationOptions */ -export default class dxPager extends Widget { +export default class dxPagination extends Widget { /** * @docid * @publicName getPageCount() @@ -67,4 +67,4 @@ export default class dxPager extends Widget { /** * @public */ -export type Properties = dxPagerOptions; +export type Properties = dxPaginationOptions; diff --git a/packages/devextreme/js/ui/pager_types.d.ts b/packages/devextreme/js/ui/pager_types.d.ts index 21fb07375088..ccdd37c8d1c3 100644 --- a/packages/devextreme/js/ui/pager_types.d.ts +++ b/packages/devextreme/js/ui/pager_types.d.ts @@ -1 +1,6 @@ -export { DisplayMode, PageSize, dxPagerOptions, Properties } from './pager'; +export { + DisplayMode, + PageSize, + dxPaginationOptions, + Properties, +} from './pager'; diff --git a/packages/devextreme/ts/dx.all.d.ts b/packages/devextreme/ts/dx.all.d.ts index 2ad247c6d68e..750758ea9d28 100644 --- a/packages/devextreme/ts/dx.all.d.ts +++ b/packages/devextreme/ts/dx.all.d.ts @@ -251,11 +251,11 @@ declare global { dxNumberBox(options: string): any; dxNumberBox(options: string, ...params: any[]): any; - dxPager(): JQuery; - dxPager(options: 'instance'): DevExpress.ui.dxPager; - dxPager(options: DevExpress.ui.dxPager.Properties): JQuery; - dxPager(options: string): any; - dxPager(options: string, ...params: any[]): any; + dxPagination(): JQuery; + dxPagination(options: 'instance'): DevExpress.ui.dxPagination; + dxPagination(options: DevExpress.ui.dxPagination.Properties): JQuery; + dxPagination(options: string): any; + dxPagination(options: string, ...params: any[]): any; dxPieChart(): JQuery; dxPieChart(options: 'instance'): DevExpress.viz.dxPieChart; @@ -21774,44 +21774,44 @@ declare module DevExpress.ui { wrapperAttr?: any; } /** - * [descr:dxPager] + * [descr:dxPagination] */ - export class dxPager extends Widget { + export class dxPagination extends Widget { /** - * [descr:dxPager.getPageCount()] + * [descr:dxPagination.getPageCount()] */ getPageCount(): number; } - module dxPager { + module dxPagination { export type PageSize = number | 'all'; - export type Properties = dxPagerOptions; + export type Properties = dxPaginationOptions; } /** - * [descr:dxPagerOptions] - * @deprecated [depNote:dxPagerOptions] + * [descr:dxPaginationOptions] + * @deprecated [depNote:dxPaginationOptions] */ - export interface dxPagerOptions + export interface dxPaginationOptions extends DevExpress.common.PagerBaseOptions, - WidgetOptions { + WidgetOptions { /** - * [descr:dxPagerOptions.pageIndex] + * [descr:dxPaginationOptions.pageIndex] */ pageIndex?: number; /** - * [descr:dxPagerOptions.pageSize] + * [descr:dxPaginationOptions.pageSize] */ pageSize?: number; /** - * [descr:dxPagerOptions.itemCount] + * [descr:dxPaginationOptions.itemCount] */ itemCount?: number; /** - * [descr:dxPagerOptions.allowedPageSizes] + * [descr:dxPaginationOptions.allowedPageSizes] */ - allowedPageSizes?: Array; + allowedPageSizes?: Array; } /** * [descr:dxPivotGrid] From c325f51fc51bc5b39635e304d7fba965ecbcad5f Mon Sep 17 00:00:00 2001 From: Roman Semenov Date: Tue, 8 Oct 2024 14:07:14 +0400 Subject: [PATCH 31/38] rename --- .../helpers/widgetTypings.ts | 2 +- .../tests/pager/accessibility.ts | 2 +- .../tests/pager/baseProperties.ts | 12 +- e2e/testcafe-devextreme/tests/pager/index.ts | 8 +- .../src/ui/pagination/index.ts | 127 ------------------ packages/devextreme-vue/src/pagination.ts | 18 --- .../build/gulp/modules_metadata.json | 2 +- .../js/bundles/modules/parts/widgets-base.js | 2 +- packages/testcafe-models/types.ts | 2 +- 9 files changed, 15 insertions(+), 160 deletions(-) diff --git a/e2e/testcafe-devextreme/helpers/widgetTypings.ts b/e2e/testcafe-devextreme/helpers/widgetTypings.ts index 404a55234e61..01ee9cacedda 100644 --- a/e2e/testcafe-devextreme/helpers/widgetTypings.ts +++ b/e2e/testcafe-devextreme/helpers/widgetTypings.ts @@ -23,7 +23,7 @@ export type WidgetName = | 'dxPivotGridFieldChooser' | 'dxDataGrid' | 'dxTreeList' - | 'dxPager' + | 'dxPagination' | 'dxRadioGroup' | 'dxScheduler' | 'dxTabs' diff --git a/e2e/testcafe-devextreme/tests/pager/accessibility.ts b/e2e/testcafe-devextreme/tests/pager/accessibility.ts index 2e93a1366897..154d67239d86 100644 --- a/e2e/testcafe-devextreme/tests/pager/accessibility.ts +++ b/e2e/testcafe-devextreme/tests/pager/accessibility.ts @@ -52,7 +52,7 @@ const a11yCheckConfig = { }; const configuration: Configuration = { - component: 'dxPager', + component: 'dxPagination', a11yCheckConfig, options, created, diff --git a/e2e/testcafe-devextreme/tests/pager/baseProperties.ts b/e2e/testcafe-devextreme/tests/pager/baseProperties.ts index f76e979c2f27..095785218d1c 100644 --- a/e2e/testcafe-devextreme/tests/pager/baseProperties.ts +++ b/e2e/testcafe-devextreme/tests/pager/baseProperties.ts @@ -17,7 +17,7 @@ test('Pager width and height property', async (t) => { .eql(null) .expect(pager.element.getAttribute('height')) .eql(null); -}).before(async () => createWidget('dxPager', { +}).before(async () => createWidget('dxPagination', { width: 270, height: '95px', itemCount: 50, @@ -30,7 +30,7 @@ test('Pager elementAttr property', async (t) => { .eql('some description') .expect(pager.element.getAttribute('data-test')) .eql('custom data'); -}).before(async () => createWidget('dxPager', { +}).before(async () => createWidget('dxPagination', { elementAttr: { 'aria-label': 'some description', 'data-test': 'custom data', @@ -48,7 +48,7 @@ test('Pager hint, disabled and accessKey properties', async (t) => { .eql('F') .expect(pager.element.getAttribute('title')) .eql('Best Pager'); -}).before(async () => createWidget('dxPager', { +}).before(async () => createWidget('dxPagination', { hint: 'Best Pager', disabled: true, accessKey: 'F', @@ -80,7 +80,7 @@ test('Pager tabindex and state properties', async (t) => { await t .expect(pager.element.hasClass('dx-state-active')) .ok(); -}).before(async () => createWidget('dxPager', { +}).before(async () => createWidget('dxPagination', { itemCount: 50, disabled: false, width: '100%', @@ -103,7 +103,7 @@ test('Pager focus method without focusStateEnabled', async (t) => { await t .expect(pager.getPageSize(0).element.focused) .ok(); -}).before(async () => createWidget('dxPager', { +}).before(async () => createWidget('dxPagination', { focusStateEnabled: false, itemCount: 50, })); @@ -121,7 +121,7 @@ test('Pager focus method with focusStateEnabled', async (t) => { await t .expect(pager.element.focused) .ok(); -}).before(async () => createWidget('dxPager', { +}).before(async () => createWidget('dxPagination', { focusStateEnabled: true, itemCount: 50, })); diff --git a/e2e/testcafe-devextreme/tests/pager/index.ts b/e2e/testcafe-devextreme/tests/pager/index.ts index 054371e92ec6..d0efb07614f2 100644 --- a/e2e/testcafe-devextreme/tests/pager/index.ts +++ b/e2e/testcafe-devextreme/tests/pager/index.ts @@ -10,7 +10,7 @@ test('Pager visibile property', async (t) => { await t .expect(pager.element.hasClass('dx-state-invisible')) .ok(); -}).before(async () => createWidget('dxPager', { +}).before(async () => createWidget('dxPagination', { itemCount: 50, visible: false, })); @@ -22,7 +22,7 @@ test('PageSize selector test', async (t) => { .click(pager.getPageSize(1).element) .expect(pager.option('pageCount')) .eql(13); -}).before(async () => createWidget('dxPager', { +}).before(async () => createWidget('dxPagination', { itemCount: 50, pageIndex: 2, pageSize: 8, // pageCount: 7 @@ -38,7 +38,7 @@ test('PageIndex test', async (t) => { .click(pager.getNavPage('5').element) .expect(pager.option('pageIndex')) .eql(5); -}).before(async () => createWidget('dxPager', { +}).before(async () => createWidget('dxPagination', { itemCount: 50, pageIndex: 1, pageSize: 5, // pageCount: 10 @@ -53,7 +53,7 @@ test('PageIndex correction test', async (t) => { .click(pager.getPageSize(1).element) .expect(pager.option('pageIndex')) .eql(5); -}).before(async () => createWidget('dxPager', { +}).before(async () => createWidget('dxPagination', { itemCount: 50, pageIndex: 10, pageSize: 5, // pageCount: 10 diff --git a/packages/devextreme-angular/src/ui/pagination/index.ts b/packages/devextreme-angular/src/ui/pagination/index.ts index 7aaef7b2fbf4..fb593135cfb7 100644 --- a/packages/devextreme-angular/src/ui/pagination/index.ts +++ b/packages/devextreme-angular/src/ui/pagination/index.ts @@ -20,7 +20,6 @@ import { } from '@angular/core'; -import { DisplayMode } from 'devextreme/common'; import DxPagination from 'devextreme/ui/pager'; @@ -109,19 +108,6 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC } - /** - * [descr:PagerBaseOptions.displayMode] - - */ - @Input() - get displayMode(): DisplayMode { - return this._getOption('displayMode'); - } - set displayMode(value: DisplayMode) { - this._setOption('displayMode', value); - } - - /** * [descr:DOMComponentOptions.elementAttr] @@ -187,19 +173,6 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC } - /** - * [descr:PagerBaseOptions.infoText] - - */ - @Input() - get infoText(): string { - return this._getOption('infoText'); - } - set infoText(value: string) { - this._setOption('infoText', value); - } - - /** * [descr:dxPaginationOptions.itemCount] @@ -213,19 +186,6 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC } - /** - * [descr:PagerBaseOptions.label] - - */ - @Input() - get label(): string { - return this._getOption('label'); - } - set label(value: string) { - this._setOption('label', value); - } - - /** * [descr:dxPaginationOptions.pageIndex] @@ -265,45 +225,6 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC } - /** - * [descr:PagerBaseOptions.showInfo] - - */ - @Input() - get showInfo(): boolean { - return this._getOption('showInfo'); - } - set showInfo(value: boolean) { - this._setOption('showInfo', value); - } - - - /** - * [descr:PagerBaseOptions.showNavigationButtons] - - */ - @Input() - get showNavigationButtons(): boolean { - return this._getOption('showNavigationButtons'); - } - set showNavigationButtons(value: boolean) { - this._setOption('showNavigationButtons', value); - } - - - /** - * [descr:PagerBaseOptions.showPageSizeSelector] - - */ - @Input() - get showPageSizeSelector(): boolean { - return this._getOption('showPageSizeSelector'); - } - set showPageSizeSelector(value: boolean) { - this._setOption('showPageSizeSelector', value); - } - - /** * [descr:WidgetOptions.tabIndex] @@ -402,13 +323,6 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC */ @Output() disabledChange: EventEmitter; - /** - - * This member supports the internal infrastructure and is not intended to be used directly from your code. - - */ - @Output() displayModeChange: EventEmitter; - /** * This member supports the internal infrastructure and is not intended to be used directly from your code. @@ -444,13 +358,6 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC */ @Output() hoverStateEnabledChange: EventEmitter; - /** - - * This member supports the internal infrastructure and is not intended to be used directly from your code. - - */ - @Output() infoTextChange: EventEmitter; - /** * This member supports the internal infrastructure and is not intended to be used directly from your code. @@ -458,13 +365,6 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC */ @Output() itemCountChange: EventEmitter; - /** - - * This member supports the internal infrastructure and is not intended to be used directly from your code. - - */ - @Output() labelChange: EventEmitter; - /** * This member supports the internal infrastructure and is not intended to be used directly from your code. @@ -486,27 +386,6 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC */ @Output() rtlEnabledChange: EventEmitter; - /** - - * This member supports the internal infrastructure and is not intended to be used directly from your code. - - */ - @Output() showInfoChange: EventEmitter; - - /** - - * This member supports the internal infrastructure and is not intended to be used directly from your code. - - */ - @Output() showNavigationButtonsChange: EventEmitter; - - /** - - * This member supports the internal infrastructure and is not intended to be used directly from your code. - - */ - @Output() showPageSizeSelectorChange: EventEmitter; - /** * This member supports the internal infrastructure and is not intended to be used directly from your code. @@ -553,21 +432,15 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC { emit: 'activeStateEnabledChange' }, { emit: 'allowedPageSizesChange' }, { emit: 'disabledChange' }, - { emit: 'displayModeChange' }, { emit: 'elementAttrChange' }, { emit: 'focusStateEnabledChange' }, { emit: 'heightChange' }, { emit: 'hintChange' }, { emit: 'hoverStateEnabledChange' }, - { emit: 'infoTextChange' }, { emit: 'itemCountChange' }, - { emit: 'labelChange' }, { emit: 'pageIndexChange' }, { emit: 'pageSizeChange' }, { emit: 'rtlEnabledChange' }, - { emit: 'showInfoChange' }, - { emit: 'showNavigationButtonsChange' }, - { emit: 'showPageSizeSelectorChange' }, { emit: 'tabIndexChange' }, { emit: 'visibleChange' }, { emit: 'widthChange' } diff --git a/packages/devextreme-vue/src/pagination.ts b/packages/devextreme-vue/src/pagination.ts index 6735f1afe405..9f8e167c59d8 100644 --- a/packages/devextreme-vue/src/pagination.ts +++ b/packages/devextreme-vue/src/pagination.ts @@ -7,15 +7,12 @@ type AccessibleOptions = Pick Date: Tue, 8 Oct 2024 14:18:03 +0400 Subject: [PATCH 32/38] gen: regenerate-all --- .../src/ui/pagination/index.ts | 127 ++++++++++++++++++ packages/devextreme-vue/src/pagination.ts | 18 +++ 2 files changed, 145 insertions(+) diff --git a/packages/devextreme-angular/src/ui/pagination/index.ts b/packages/devextreme-angular/src/ui/pagination/index.ts index fb593135cfb7..7aaef7b2fbf4 100644 --- a/packages/devextreme-angular/src/ui/pagination/index.ts +++ b/packages/devextreme-angular/src/ui/pagination/index.ts @@ -20,6 +20,7 @@ import { } from '@angular/core'; +import { DisplayMode } from 'devextreme/common'; import DxPagination from 'devextreme/ui/pager'; @@ -108,6 +109,19 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC } + /** + * [descr:PagerBaseOptions.displayMode] + + */ + @Input() + get displayMode(): DisplayMode { + return this._getOption('displayMode'); + } + set displayMode(value: DisplayMode) { + this._setOption('displayMode', value); + } + + /** * [descr:DOMComponentOptions.elementAttr] @@ -173,6 +187,19 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC } + /** + * [descr:PagerBaseOptions.infoText] + + */ + @Input() + get infoText(): string { + return this._getOption('infoText'); + } + set infoText(value: string) { + this._setOption('infoText', value); + } + + /** * [descr:dxPaginationOptions.itemCount] @@ -186,6 +213,19 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC } + /** + * [descr:PagerBaseOptions.label] + + */ + @Input() + get label(): string { + return this._getOption('label'); + } + set label(value: string) { + this._setOption('label', value); + } + + /** * [descr:dxPaginationOptions.pageIndex] @@ -225,6 +265,45 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC } + /** + * [descr:PagerBaseOptions.showInfo] + + */ + @Input() + get showInfo(): boolean { + return this._getOption('showInfo'); + } + set showInfo(value: boolean) { + this._setOption('showInfo', value); + } + + + /** + * [descr:PagerBaseOptions.showNavigationButtons] + + */ + @Input() + get showNavigationButtons(): boolean { + return this._getOption('showNavigationButtons'); + } + set showNavigationButtons(value: boolean) { + this._setOption('showNavigationButtons', value); + } + + + /** + * [descr:PagerBaseOptions.showPageSizeSelector] + + */ + @Input() + get showPageSizeSelector(): boolean { + return this._getOption('showPageSizeSelector'); + } + set showPageSizeSelector(value: boolean) { + this._setOption('showPageSizeSelector', value); + } + + /** * [descr:WidgetOptions.tabIndex] @@ -323,6 +402,13 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC */ @Output() disabledChange: EventEmitter; + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() displayModeChange: EventEmitter; + /** * This member supports the internal infrastructure and is not intended to be used directly from your code. @@ -358,6 +444,13 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC */ @Output() hoverStateEnabledChange: EventEmitter; + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() infoTextChange: EventEmitter; + /** * This member supports the internal infrastructure and is not intended to be used directly from your code. @@ -365,6 +458,13 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC */ @Output() itemCountChange: EventEmitter; + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() labelChange: EventEmitter; + /** * This member supports the internal infrastructure and is not intended to be used directly from your code. @@ -386,6 +486,27 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC */ @Output() rtlEnabledChange: EventEmitter; + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() showInfoChange: EventEmitter; + + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() showNavigationButtonsChange: EventEmitter; + + /** + + * This member supports the internal infrastructure and is not intended to be used directly from your code. + + */ + @Output() showPageSizeSelectorChange: EventEmitter; + /** * This member supports the internal infrastructure and is not intended to be used directly from your code. @@ -432,15 +553,21 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC { emit: 'activeStateEnabledChange' }, { emit: 'allowedPageSizesChange' }, { emit: 'disabledChange' }, + { emit: 'displayModeChange' }, { emit: 'elementAttrChange' }, { emit: 'focusStateEnabledChange' }, { emit: 'heightChange' }, { emit: 'hintChange' }, { emit: 'hoverStateEnabledChange' }, + { emit: 'infoTextChange' }, { emit: 'itemCountChange' }, + { emit: 'labelChange' }, { emit: 'pageIndexChange' }, { emit: 'pageSizeChange' }, { emit: 'rtlEnabledChange' }, + { emit: 'showInfoChange' }, + { emit: 'showNavigationButtonsChange' }, + { emit: 'showPageSizeSelectorChange' }, { emit: 'tabIndexChange' }, { emit: 'visibleChange' }, { emit: 'widthChange' } diff --git a/packages/devextreme-vue/src/pagination.ts b/packages/devextreme-vue/src/pagination.ts index 9f8e167c59d8..6735f1afe405 100644 --- a/packages/devextreme-vue/src/pagination.ts +++ b/packages/devextreme-vue/src/pagination.ts @@ -7,12 +7,15 @@ type AccessibleOptions = Pick Date: Tue, 8 Oct 2024 14:36:08 +0400 Subject: [PATCH 33/38] fix: forgotten e2e rename --- packages/testcafe-models/pager/index.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/testcafe-models/pager/index.ts b/packages/testcafe-models/pager/index.ts index cbc60b5223b2..8e2f4e41a0be 100644 --- a/packages/testcafe-models/pager/index.ts +++ b/packages/testcafe-models/pager/index.ts @@ -24,7 +24,7 @@ const CLASS = { }; export default class Pager extends Widget { - getName(): WidgetName { return 'dxPager'; } + getName(): WidgetName { return 'dxPagination'; } getPageSize(index: number): SelectableElement { return new SelectableElement(this.element From 3fdf91dcfc2d2a90a77625ebefaf5f5e2e3f3fdc Mon Sep 17 00:00:00 2001 From: Roman Semenov Date: Tue, 8 Oct 2024 14:53:24 +0400 Subject: [PATCH 34/38] fix: forgotten jq rename --- packages/devextreme/js/ui/pager.js | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/packages/devextreme/js/ui/pager.js b/packages/devextreme/js/ui/pager.js index 492efb7c3f0a..893f4c8cd495 100644 --- a/packages/devextreme/js/ui/pager.js +++ b/packages/devextreme/js/ui/pager.js @@ -3,4 +3,4 @@ import registerComponent from '../core/component_registrator'; export default Pager; -registerComponent('dxPager', Pager); +registerComponent('dxPagination', Pager); From 0e13086b6d3ae8c92bf9fd37108834ec899150a2 Mon Sep 17 00:00:00 2001 From: Roman Semenov Date: Tue, 8 Oct 2024 15:52:35 +0400 Subject: [PATCH 35/38] fix: rename in forgotten qunit tests --- .../pagerView.tests.js | 4 +- .../DevExpress.ui.widgets/pager.tests.js | 254 +++++++++--------- 2 files changed, 129 insertions(+), 129 deletions(-) diff --git a/packages/devextreme/testing/tests/DevExpress.ui.widgets.dataGrid/pagerView.tests.js b/packages/devextreme/testing/tests/DevExpress.ui.widgets.dataGrid/pagerView.tests.js index 4a4a9876cbce..c54277fc0f39 100644 --- a/packages/devextreme/testing/tests/DevExpress.ui.widgets.dataGrid/pagerView.tests.js +++ b/packages/devextreme/testing/tests/DevExpress.ui.widgets.dataGrid/pagerView.tests.js @@ -418,7 +418,7 @@ QUnit.module('Pager', { // assert assert.equal(this.dataController.pageCount(), 2); assert.ok(isVisible); - assert.equal(pagerView.element().dxPager('instance').option('pagesNavigatorVisible'), 'auto', 'pagesNavigatorVisible'); + assert.equal(pagerView.element().dxPagination('instance').option('pagesNavigatorVisible'), 'auto', 'pagesNavigatorVisible'); }); QUnit.test('isVisible when pageCount == 1 and visible is auto', function(assert) { @@ -466,7 +466,7 @@ QUnit.module('Pager', { // assert assert.equal(this.dataController.pageCount(), 1); assert.ok(isVisible); - assert.equal(pagerView.element().dxPager('instance').option('pagesNavigatorVisible'), true, 'pagesNavigatorVisible'); + assert.equal(pagerView.element().dxPagination('instance').option('pagesNavigatorVisible'), true, 'pagesNavigatorVisible'); }); QUnit.test('isVisible when pageCount > 1 and visible is false', function(assert) { diff --git a/packages/devextreme/testing/tests/DevExpress.ui.widgets/pager.tests.js b/packages/devextreme/testing/tests/DevExpress.ui.widgets/pager.tests.js index aaeb6eb16c1b..e0e496acb625 100644 --- a/packages/devextreme/testing/tests/DevExpress.ui.widgets/pager.tests.js +++ b/packages/devextreme/testing/tests/DevExpress.ui.widgets/pager.tests.js @@ -71,8 +71,8 @@ function() { return rootElement.find('.dx-page, .dx-separator'); }; QUnit.test('Default options init', function(assert) { - const $pager = $('#container').dxPager(); - const instance = $pager.dxPager('instance'); + const $pager = $('#container').dxPagination(); + const instance = $pager.dxPagination('instance'); assert.ok(instance.option('visible'), 'visible'); assert.equal(instance.option('pageIndex'), 1, 'pageIndex'); @@ -85,7 +85,7 @@ function() { // assert.deepEqual(instance.option('pageSizeChanged'), commonUtils.noop, 'pageSizeChanged'); }); QUnit.test('Markup init', function(assert) { - const $pager = $('#container').dxPager({ itemCount: 50 }); + const $pager = $('#container').dxPagination({ itemCount: 50 }); const $pageSizeButton = $pager.find('.dx-page-size').first(); const $pageNumberButton = $pager.find('.dx-page').eq(2); @@ -113,7 +113,7 @@ function() { }); QUnit.test('Events are called', function(assert) { - const $pager = $('#container').dxPager({ + const $pager = $('#container').dxPagination({ itemCount: 50, pageIndexChanged: function(pageIndex) { testPageIndex = pageIndex; @@ -133,7 +133,7 @@ function() { }); QUnit.test('Markup when a pages count less max pages count', function(assert) { - const $pager = $('#container').dxPager({ itemCount: 75, pageCount: 15 }); + const $pager = $('#container').dxPagination({ itemCount: 75, pageCount: 15 }); assert.equal($pager.find('.dx-page').length, 6, 'page elements count'); assert.strictEqual($pager.find('.dx-separator').length, 1, 'page separator element'); @@ -147,20 +147,20 @@ function() { // TODO: Contradict with a grid behavior. When there is no records it shows a pager with one page QUnit.test.skip('Pager is not rendered if pages count equal zero', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 7, pageCount: 0, itemCount: 0 }); + const $pager = $('#container').dxPagination({ maxPagesCount: 7, pageCount: 0, itemCount: 0 }); assert.strictEqual($pager.find('.dx-pages').length, 0, 'pager is not rendered'); }); QUnit.test('Pager is rendered if pages count equals one and more page exists', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 7, pageCount: 1, hasKnownLastPage: false }); + const $pager = $('#container').dxPagination({ maxPagesCount: 7, pageCount: 1, hasKnownLastPage: false }); assert.strictEqual($pager.find('.dx-pages').length, 1, 'pager is rendered'); assert.ok(this.checkPages($pager, [1, '>'], '1'), 'pages'); }); QUnit.test('Pager second render', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 7, pageCount: 5 }); const instance = $pager.dxPager('instance'); + const $pager = $('#container').dxPagination({ maxPagesCount: 7, pageCount: 5 }); const instance = $pager.dxPagination('instance'); instance._render(); @@ -169,18 +169,18 @@ function() { QUnit.test('Get pages when pages count more maxPagesCount', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 10, pageCount: 13, itemCount: 65 }); + const $pager = $('#container').dxPagination({ maxPagesCount: 10, pageCount: 13, itemCount: 65 }); - const instance = $pager.dxPager('instance'); + const instance = $pager.dxPagination('instance'); instance._render(); assert.ok(this.checkPages($pager, [1, 2, 3, 4, 5, 13], '1'), 'pages'); }); QUnit.test('Get pages when pages count more maxPagesCount and more page exists', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 10, pageCount: 13, itemCount: 65, hasKnownLastPage: false }); + const $pager = $('#container').dxPagination({ maxPagesCount: 10, pageCount: 13, itemCount: 65, hasKnownLastPage: false }); - const instance = $pager.dxPager('instance'); + const instance = $pager.dxPagination('instance'); instance._render(); assert.ok(this.checkPages($pager, [1, 2, 3, 4, 5, 13, '>'], '1'), 'pages'); @@ -188,8 +188,8 @@ function() { // B232538 QUnit.test('Get pages when pages count more maxPagesCount after pages count is changed', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 10, pageCount: 1, itemCount: 5 }); - const instance = $pager.dxPager('instance'); + const $pager = $('#container').dxPagination({ maxPagesCount: 10, pageCount: 1, itemCount: 5 }); + const instance = $pager.dxPagination('instance'); instance.option('itemCount', 65); @@ -197,8 +197,8 @@ function() { }); QUnit.test('Get pages when more page does not exist after changed', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 10, pageCount: 13, itemCount: 65, hasKnownLastPage: false }); - const instance = $pager.dxPager('instance'); + const $pager = $('#container').dxPagination({ maxPagesCount: 10, pageCount: 13, itemCount: 65, hasKnownLastPage: false }); + const instance = $pager.dxPagination('instance'); instance.option({ pageCount: 14, itemCount: 70, hasKnownLastPage: true }); @@ -206,13 +206,13 @@ function() { }); QUnit.test('Get pages when pages count less maxPagesCount', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 10, pageCount: 7, itemCount: 35, }); + const $pager = $('#container').dxPagination({ maxPagesCount: 10, pageCount: 7, itemCount: 35, }); assert.ok(this.checkPages($pager, [1, 2, 3, 4, 5, 6, 7], '1'), 'pages'); }); QUnit.test('SelectPageByValue', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 10, pageCount: 13, itemCount: 65 }); - const instance = $pager.dxPager('instance'); + const $pager = $('#container').dxPagination({ maxPagesCount: 10, pageCount: 13, itemCount: 65 }); + const instance = $pager.dxPagination('instance'); // assert assert.ok(this.checkPages($pager, [1, 2, 3, 4, 5, 13], '1'), 'page value = 1'); @@ -256,7 +256,7 @@ function() { QUnit.test('Render pages without separator', function(assert) { const testElement = $('#container'); - testElement.dxPager({ maxPagesCount: 7, pageCount: 5, itemCount: 25 }); + testElement.dxPagination({ maxPagesCount: 7, pageCount: 5, itemCount: 25 }); const pagesElement = getPagesElement(testElement); assert.equal(pagesElement.length, 5, 'pages elements count'); @@ -269,7 +269,7 @@ function() { QUnit.test('Render pages with separator', function(assert) { const testElement = $('#container'); - testElement.dxPager({ maxPagesCount: 7, pageCount: 8, itemCount: 40 }); + testElement.dxPagination({ maxPagesCount: 7, pageCount: 8, itemCount: 40 }); const pagesElement = getPagesElement(testElement); assert.equal(pagesElement.length, 7, 'pages elements count'); @@ -284,7 +284,7 @@ function() { QUnit.test('Select page after click', function(assert) { const testElement = $('#container'); - const $pager = testElement.dxPager({ maxPagesCount: 7, pageCount: 8, itemCount: 40 }); + const $pager = testElement.dxPagination({ maxPagesCount: 7, pageCount: 8, itemCount: 40 }); $(getPagesElement(testElement)[4]).trigger('dxclick'); const pagesElement = getPagesElement(testElement); @@ -301,7 +301,7 @@ function() { QUnit.test('Select page after pointer up', function(assert) { const testElement = $('#container'); - const $pager = testElement.dxPager({ maxPagesCount: 7, pageCount: 8, itemCount: 40 }); + const $pager = testElement.dxPagination({ maxPagesCount: 7, pageCount: 8, itemCount: 40 }); let pagesElement = getPagesElement(testElement); @@ -323,7 +323,7 @@ function() { QUnit.test('PagesChooser is not visible if pages count equal one', function(assert) { const testElement = $('#container'); - testElement.dxPager({ maxPagesCount: 7, pageCount: 1 }); + testElement.dxPagination({ maxPagesCount: 7, pageCount: 1 }); const $pages = testElement.find('.dx-page'); assert.equal($pages.length, 1, '$pages count'); @@ -333,7 +333,7 @@ function() { QUnit.test('PagesChooser is visible always if pageNavigatorVisible is true', function(assert) { const testElement = $('#container'); - testElement.dxPager({ maxPagesCount: 7, pageCount: 1, pagesNavigatorVisible: true }); + testElement.dxPagination({ maxPagesCount: 7, pageCount: 1, pagesNavigatorVisible: true }); const $pages = testElement.find('.dx-page'); assert.equal($pages.length, 1, '$pages count'); @@ -343,7 +343,7 @@ function() { QUnit.test('PagesChooser is not visible if pageNavigatorVisible is false', function(assert) { const testElement = $('#container'); - testElement.dxPager({ maxPagesCount: 7, pageCount: 1, pagesNavigatorVisible: false }); + testElement.dxPagination({ maxPagesCount: 7, pageCount: 1, pagesNavigatorVisible: false }); const $pages = testElement.find('.dx-page'); assert.equal($pages.length, 0, '$pages count'); @@ -352,7 +352,7 @@ function() { QUnit.test('PagesChooser is not visible when pageNavigatorVisible is false', function(assert) { const testElement = $('#container'); - const pager = testElement.dxPager({ maxPagesCount: 7, pageCount: 1, pagesNavigatorVisible: true }).dxPager('instance'); + const pager = testElement.dxPagination({ maxPagesCount: 7, pageCount: 1, pagesNavigatorVisible: true }).dxPagination('instance'); pager.option('pagesNavigatorVisible', false); const $pages = testElement.find('.dx-page'); @@ -361,8 +361,8 @@ function() { QUnit.test('Change pages count', function(assert) { const testElement = $('#container'); - const $pager = testElement.dxPager({ maxPagesCount: 7, pageCount: 8, itemCount: 40 }); - const instance = $pager.dxPager('instance'); + const $pager = testElement.dxPagination({ maxPagesCount: 7, pageCount: 8, itemCount: 40 }); + const instance = $pager.dxPagination('instance'); let pagesElement; pagesElement = getPagesElement(testElement); @@ -397,8 +397,8 @@ function() { // TODO: Contradict with a grid behavior. When there is no records it shows a pager with one page QUnit.test.skip('render pager on changed event', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 0, itemCount: 0 }); - const instance = $pager.dxPager('instance'); + const $pager = $('#container').dxPagination({ maxPagesCount: 8, pageCount: 0, itemCount: 0 }); + const instance = $pager.dxPagination('instance'); assert.strictEqual($('.dx-pages').length, 0); @@ -408,14 +408,14 @@ function() { }); QUnit.test('Pager is not displayed when visible is false', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], visible: false }); + const $pager = $('#container').dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], visible: false }); assert.strictEqual($('.' + 'dx-pager').length, 1, 'pager is rendered'); assert.equal($pager.css('display'), 'none', 'pager is hidden'); }); QUnit.test('Page sizes render', function(assert) { - $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, pageIndex: 1, allowedPageSizes: [5, 10, 20] }); + $('#container').dxPagination({ maxPagesCount: 8, pageCount: 10, pageIndex: 1, allowedPageSizes: [5, 10, 20] }); const pageSizesElements = $('.dx-page-size'); assert.equal(pageSizesElements.length, 3, 'page size elements count'); @@ -425,14 +425,14 @@ function() { }); // if(!isRenovation) { QUnit.test('Page sizes render when pageSizes is empty', function(assert) { - $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, pageIndex: 1, allowedPageSizes: [] }); + $('#container').dxPagination({ maxPagesCount: 8, pageCount: 10, pageIndex: 1, allowedPageSizes: [] }); const pageSizesElements = $('.dx-page-size'); assert.equal(pageSizesElements.length, 0, 'page size elements count'); }); QUnit.test('Page sizes render when showPageSizeSelector is false', function(assert) { - $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, pageIndex: 1, showPageSizeSelector: false, allowedPageSizes: [5, 10, 20] }); + $('#container').dxPagination({ maxPagesCount: 8, pageCount: 10, pageIndex: 1, showPageSizeSelector: false, allowedPageSizes: [5, 10, 20] }); const pageSizesElements = $('.dx-page-size'); const pageSizesContainer = $('.dx-page-sizes'); @@ -442,7 +442,7 @@ function() { }); QUnit.test('Page size selection by click', function(assert) { - $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, pageIndex: 1, allowedPageSizes: [5, 10, 20] }); + $('#container').dxPagination({ maxPagesCount: 8, pageCount: 10, pageIndex: 1, allowedPageSizes: [5, 10, 20] }); let pageSizesElements = $('.dx-page-size'); let selectionPageSizesElements; @@ -472,7 +472,7 @@ function() { QUnit.test('Page size is changed when selected page is clicked', function(assert) { let pageSizeChanged; - $('#container').dxPager({ + $('#container').dxPagination({ maxPagesCount: 8, pagesCount: 10, pageIndex: 1, @@ -496,7 +496,7 @@ function() { QUnit.test('PageSizeChanged is occurred when page size option is changed', function(assert) { let pageSizeChanged; - const $pager = $('#container').dxPager({ + const $pager = $('#container').dxPagination({ maxPagesCount: 8, pagesCount: 10, pageIndex: 1, @@ -506,7 +506,7 @@ function() { } }); - const pager = $pager.dxPager('instance'); + const pager = $pager.dxPagination('instance'); assert.ok(!pageSizeChanged); @@ -516,8 +516,8 @@ function() { }); QUnit.test('Correct selected page when page index is not contains in the pages', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 25, itemCount: 125, pageIndex: 1, allowedPageSizes: [5, 10, 20] }); - const instance = $pager.dxPager('instance'); + const $pager = $('#container').dxPagination({ maxPagesCount: 8, pageCount: 25, itemCount: 125, pageIndex: 1, allowedPageSizes: [5, 10, 20] }); + const instance = $pager.dxPagination('instance'); instance.option('pageIndex', 16); let pagesElement = getPagesElement($('#container')); @@ -543,8 +543,8 @@ function() { }); QUnit.test('Refresh pages after page size is changed_B233925', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 15, itemCount: 75, pageIndex: 1, allowedPageSizes: [5, 10, 20] }); - const instance = $pager.dxPager('instance'); + const $pager = $('#container').dxPagination({ maxPagesCount: 8, pageCount: 15, itemCount: 75, pageIndex: 1, allowedPageSizes: [5, 10, 20] }); + const instance = $pager.dxPagination('instance'); instance.option('itemCount', 65); instance.option('pageIndex', 13); @@ -561,14 +561,14 @@ function() { // B239491 QUnit.test('Pager has negative pages when pages count is changed', function(assert) { - const $pager = $('#container').dxPager({ + const $pager = $('#container').dxPagination({ maxPagesCount: 8, itemCount: 5, pageIndex: 1, visible: false, hasKnownLastPage: false }); - const instance = $pager.dxPager('instance'); + const instance = $pager.dxPagination('instance'); instance.option({ hasKnownLastPage: true, @@ -589,13 +589,13 @@ function() { // T966318 QUnit.test('Pager does not display duplicated page numbers', function(assert) { - const $pager = $('#container').dxPager({ + const $pager = $('#container').dxPagination({ allowedPageSizes: [10, 20, 50], pageSize: 50, itemCount: 100000, pageCount: 2000, }); - const instance = $pager.dxPager('instance'); + const instance = $pager.dxPagination('instance'); instance.option('pageIndex', 1999); instance.option('pageSize', 10); @@ -611,8 +611,8 @@ function() { }); QUnit.test('Selected page is not reset_B237051', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 15, itemCount: 75, pageIndex: 1 }); - const instance = $pager.dxPager('instance'); + const $pager = $('#container').dxPagination({ maxPagesCount: 8, pageCount: 15, itemCount: 75, pageIndex: 1 }); + const instance = $pager.dxPagination('instance'); instance.option('pageCount', 1); instance.option('pageCount', 15); @@ -630,8 +630,8 @@ function() { // B239176; QUnit.test('Click separator page_B239176', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 7, pageCount: 8 }); - const instance = $pager.dxPager('instance'); + const $pager = $('#container').dxPagination({ maxPagesCount: 7, pageCount: 8 }); + const instance = $pager.dxPagination('instance'); $('.dx-separator').first().trigger('dxclick'); @@ -641,7 +641,7 @@ function() { // B239176 QUnit.test('Click page parent container_B239176', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 7, pageCount: 8 }); const instance = $pager.dxPager('instance'); + const $pager = $('#container').dxPagination({ maxPagesCount: 7, pageCount: 8 }); const instance = $pager.dxPagination('instance'); $('.dx-pages').first().trigger('dxclick'); @@ -651,7 +651,7 @@ function() { // B239176 QUnit.test('Click page size parent container_B239176', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], pageSize: 10 }); const instance = $pager.dxPager('instance'); + const $pager = $('#container').dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], pageSize: 10 }); const instance = $pager.dxPagination('instance'); $('.dx-page-sizes').first().trigger('dxclick'); @@ -660,7 +660,7 @@ function() { }); QUnit.test('Show navigate buttons', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], showNavigationButtons: true }); + const $pager = $('#container').dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], showNavigationButtons: true }); assert.equal($pager.find('.dx-navigate-button').length, 2, 'navigate buttons count'); assert.equal($pager.find('.dx-prev-button').length, 1, 'prev button'); @@ -668,8 +668,8 @@ function() { }); QUnit.test('Next page index via navigate button', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, itemCount: 50, allowedPageSizes: [5, 10, 20], showNavigationButtons: true }); - const instance = $pager.dxPager('instance'); + const $pager = $('#container').dxPagination({ maxPagesCount: 8, pageCount: 10, itemCount: 50, allowedPageSizes: [5, 10, 20], showNavigationButtons: true }); + const instance = $pager.dxPagination('instance'); let $button = $('.dx-next-button'); $($button).trigger('dxclick'); @@ -687,7 +687,7 @@ function() { }); QUnit.test('Focus selected page', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], showNavigationButtons: true }); + const $pager = $('#container').dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], showNavigationButtons: true }); const $pages = $pager.find('.dx-pages .dx-page'); for(let i = 0; i < $pages.length; ++i) { @@ -696,8 +696,8 @@ function() { }); QUnit.test('Back page index via navigate button', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, itemCount: 50, allowedPageSizes: [5, 10, 20], showNavigationButtons: true }); - const instance = $pager.dxPager('instance'); + const $pager = $('#container').dxPagination({ maxPagesCount: 8, pageCount: 10, itemCount: 50, allowedPageSizes: [5, 10, 20], showNavigationButtons: true }); + const instance = $pager.dxPagination('instance'); instance.option('pageIndex', 8); @@ -721,7 +721,7 @@ function() { }); QUnit.test('Click on navigate buttons', function(assert) { - const $pager = $('#container').dxPager({ + const $pager = $('#container').dxPagination({ maxPagesCount: 8, pageCount: 10, itemCount: 50, @@ -729,7 +729,7 @@ function() { showNavigationButtons: true, }); - const instance = $pager.dxPager('instance'); + const instance = $pager.dxPagination('instance'); let $button; instance.option('pageIndex', 8); @@ -747,8 +747,8 @@ function() { // T804551 QUnit.test('Pointer up and click on page button', function(assert) { - const $pager = $('#container').dxPager({ pageCount: 20, itemCount: 100 }); - const instance = $pager.dxPager('instance'); + const $pager = $('#container').dxPagination({ pageCount: 20, itemCount: 100 }); + const instance = $pager.dxPagination('instance'); $pager.find('.dx-page').eq(4).trigger('dxpointerup'); @@ -758,10 +758,10 @@ function() { }); QUnit.test('Prev button is disabled when first page is chosen ', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], showNavigationButtons: true }); + const $pager = $('#container').dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], showNavigationButtons: true }); let isPageChanged; const $button = $('.dx-prev-button'); - const instance = $pager.dxPager('instance'); + const instance = $pager.dxPagination('instance'); instance.pageIndexChanged = function() { isPageChanged = true; @@ -774,9 +774,9 @@ function() { }); QUnit.test('Next button is disabled when first page is chosen ', function(assert) { - const $pager = $('#container').dxPager({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], showNavigationButtons: true }); + const $pager = $('#container').dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], showNavigationButtons: true }); let isPageChanged; - const instance = $pager.dxPager('instance'); + const instance = $pager.dxPagination('instance'); instance.option('pageIndex', 10); instance.pageIndexChanged = function() { @@ -791,7 +791,7 @@ function() { }); QUnit.test('Next button is disabled when first page is chosen (Rtl mode)', function(assert) { - $('#container').dxPager({ + $('#container').dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], @@ -807,7 +807,7 @@ function() { }); QUnit.test('Prev button is disabled when first page is chosen (Rtl mode)', function(assert) { - const $pager = $('#container').dxPager({ + const $pager = $('#container').dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], @@ -815,7 +815,7 @@ function() { rtlEnabled: true }); - const instance = $pager.dxPager('instance'); + const instance = $pager.dxPagination('instance'); instance.option('pageIndex', 10); @@ -826,7 +826,7 @@ function() { }); QUnit.test('Pages chooser visibility when page size is changed', function(assert) { - const $pager = $('#container').dxPager({ + const $pager = $('#container').dxPagination({ maxPagesCount: 8, pageCount: 10, itemCount: 50, @@ -835,7 +835,7 @@ function() { allowedPageSizes: [5, 10, 20] }); - const pager = $pager.dxPager('instance'); + const pager = $pager.dxPagination('instance'); let $pages = $('.dx-pages'); assert.equal($pages[0].style.visibility, '', 'default visibility'); @@ -852,7 +852,7 @@ function() { }); QUnit.test('Pager Info', function(assert) { - $('#container').dxPager({ + $('#container').dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], showInfo: true, itemCount: 46, infoText: 'Page {0} of {1} ({2} items)' }); @@ -864,18 +864,18 @@ function() { }); QUnit.test('Page info text is changed when itemCount is changed', function(assert) { - const $pager = $('#container').dxPager({ + const $pager = $('#container').dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], showInfo: true, itemCount: 46, infoText: 'Page {0} of {1} ({2} items)' }); - const instance = $pager.dxPager('instance'); + const instance = $pager.dxPagination('instance'); instance.option('itemCount', 89); assert.equal($('.dx-info').text(), 'Page 1 of 18 (89 items)'); }); QUnit.test('Light mode', function(assert) { - const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ + const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], @@ -899,7 +899,7 @@ function() { }); QUnit.test('Light mode without the page sizes and info', function(assert) { - const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ + const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], @@ -923,7 +923,7 @@ function() { }); QUnit.test('Light mode. Change page index after clicked on the pages count element', function(assert) { - $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ + $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPagination({ maxPagesCount: 8, pageCount: 110, itemCount: 550, @@ -941,7 +941,7 @@ function() { }); QUnit.test('Light mode when re-render', function(assert) { - const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ + const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], @@ -953,7 +953,7 @@ function() { showNavigationButtons: true }); - $pager.dxPager('instance')._render(); + $pager.dxPagination('instance')._render(); const $pageSizeChooser = $pager.find('.dx-page-sizes .dx-selectbox'); const $pageIndex = $('.dx-page-index'); @@ -969,7 +969,7 @@ function() { QUnit.test('Light mode. Check page sizes', function(assert) { const $pager = $('#container') .width(PAGER_LIGHT_MODE_WIDTH) - .dxPager({ + .dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], @@ -989,7 +989,7 @@ function() { }); QUnit.test('Light mode. Check page sizes width', function(assert) { - const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ + const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], @@ -997,7 +997,7 @@ function() { itemCount: 86, pagesCountText: 'of' }); - const pager = $pager.dxPager('instance'); + const pager = $pager.dxPagination('instance'); const $pageSizeChooser = $pager.find('.dx-page-sizes').children().first(); const selectBox = $pageSizeChooser.dxSelectBox('instance'); @@ -1011,7 +1011,7 @@ function() { QUnit.test('Light mode. Change page size', function(assert) { let testValue; - const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ + const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], @@ -1032,7 +1032,7 @@ function() { }); QUnit.test('Light mode. Change page size via option method', function(assert) { - const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ + const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [7, 10, 13, 25], @@ -1041,7 +1041,7 @@ function() { pagesCountText: 'of' }); - $pager.dxPager('instance').option('pageSize', 13); + $pager.dxPagination('instance').option('pageSize', 13); const $pageSizeChooser = $pager.find('.dx-page-sizes').children().first(); const selectBox = $pageSizeChooser.dxSelectBox('instance'); @@ -1050,7 +1050,7 @@ function() { }); QUnit.test('Light mode. Change page sizes via option method', function(assert) { - const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ + const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [7, 10, 13, 25], @@ -1059,7 +1059,7 @@ function() { pagesCountText: 'of' }); - $pager.dxPager('instance').option('allowedPageSizes', [13, 45, 67]); + $pager.dxPagination('instance').option('allowedPageSizes', [13, 45, 67]); const $pageSizeChooser = $pager.find('.dx-page-sizes').children().first(); const selectBox = $pageSizeChooser.dxSelectBox('instance'); @@ -1071,7 +1071,7 @@ function() { }); QUnit.test('Light mode. Check page index', function(assert) { - const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ + const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPagination({ maxPagesCount: 8, pageCount: 10, itemCount: 46, @@ -1085,14 +1085,14 @@ function() { }); QUnit.test('Light mode. Check page index width', function(assert) { - const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ + const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPagination({ maxPagesCount: 8, pageCount: 10, itemCount: 46, pageIndex: 73, pagesCountText: 'of' }); - const pager = $pager.dxPager('instance'); + const pager = $pager.dxPagination('instance'); const $pageIndex = $pager.find('.dx-page-index'); const numberBox = $pageIndex.dxNumberBox('instance'); @@ -1106,7 +1106,7 @@ function() { QUnit.test('Light mode. Change page index', function(assert) { let pageIndex; - const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ + const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], @@ -1126,7 +1126,7 @@ function() { }); QUnit.test('Light mode. Change page index via option', function(assert) { - const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ + const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], @@ -1137,14 +1137,14 @@ function() { const $pageIndex = $pager.find('.dx-page-index'); const numberBox = $pageIndex.dxNumberBox('instance'); - $pager.dxPager('instance').option('pageIndex', 79); + $pager.dxPagination('instance').option('pageIndex', 79); assert.equal(numberBox.option('value'), 10); }); QUnit.test('Light mode. Change page index via the navigation buttons', function(assert) { let pageIndex; - $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ + $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], @@ -1169,7 +1169,7 @@ function() { QUnit.test('Light mode. Min and max for the pageIndex editor', function(assert) { let pageIndex; - const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPager({ + const $pager = $('#container').width(PAGER_LIGHT_MODE_WIDTH).dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], @@ -1200,7 +1200,7 @@ function() { }); QUnit.test('Apply light mode when width of pager is less of min width', function(assert) { - const $pager = $('#container').width(1000).dxPager({ + const $pager = $('#container').width(1000).dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], @@ -1210,7 +1210,7 @@ function() { pagesCountText: 'of', showNavigationButtons: true }); - const pager = $pager.dxPager('instance'); + const pager = $pager.dxPagination('instance'); assert.equal(isLightMode(pager), false, 'lightModeEnabled by default'); @@ -1221,7 +1221,7 @@ function() { }); QUnit.test('Apply light mode when width equal optimal pager\'s width', function(assert) { - const $pager = $('#container').width(1000).dxPager({ + const $pager = $('#container').width(1000).dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], @@ -1232,7 +1232,7 @@ function() { showNavigationButtons: true }); - const pager = $pager.dxPager('instance'); + const pager = $pager.dxPagination('instance'); const pagesElement = getPagesElement($('#container')); const optimalPagerWidth = getWidth( @@ -1248,7 +1248,7 @@ function() { // T962160 QUnit.test('Show info after pagesizes change', function(assert) { - const $pager = $('#container').width(1000).dxPager({ + const $pager = $('#container').width(1000).dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], @@ -1257,7 +1257,7 @@ function() { infoText: 'Page {0} of {1} ({2} items)', }); - const pager = $pager.dxPager('instance'); + const pager = $pager.dxPagination('instance'); const optimalPagerWidth = getWidth($pager.find('.dx-page-sizes')) + getWidth($pager.find('.dx-pages')) + 20; $pager.width(optimalPagerWidth); @@ -1276,7 +1276,7 @@ function() { }); QUnit.test('Apply light mode when pager is first rendered', function(assert) { - const $pager = $('#container').width(100).dxPager({ + const $pager = $('#container').width(100).dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], @@ -1286,13 +1286,13 @@ function() { pagesCountText: 'of', showNavigationButtons: true }); - const pager = $pager.dxPager('instance'); + const pager = $pager.dxPagination('instance'); assert.equal(isLightMode(pager), true, 'lightModeEnabled is enabled'); }); QUnit.test('Pager is rendered in a normal view after light mode when pageCount is changed', function(assert) { - const $pager = $('#container').width(360).dxPager({ + const $pager = $('#container').width(360).dxPagination({ maxPagesCount: 10, pageCount: 5, pageSize: 8, @@ -1303,7 +1303,7 @@ function() { pagesCountText: 'of', showNavigationButtons: true }); - const pager = $pager.dxPager('instance'); + const pager = $pager.dxPagination('instance'); pager.option({ itemCount: 400, pageIndexChanged: commonUtils.noop }); pager.option({ itemCount: 40, pageIndexChanged: commonUtils.noop }); @@ -1312,7 +1312,7 @@ function() { }); QUnit.test('Light mode is applied only one', function(assert) { - const $pager = $('#container').width(1000).dxPager({ + const $pager = $('#container').width(1000).dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], @@ -1323,7 +1323,7 @@ function() { showNavigationButtons: true }); - const pager = $pager.dxPager('instance'); + const pager = $pager.dxPagination('instance'); const pageSizeEl = $pager.find('.dx-page-sizes')[0].children[0]; $pager.width(995); @@ -1353,7 +1353,7 @@ function() { }); QUnit.test('Cancel light mode when width of pager is more of min width', function(assert) { - const $pager = $('#container').width(100).dxPager({ + const $pager = $('#container').width(100).dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], @@ -1363,7 +1363,7 @@ function() { pagesCountText: 'of', showNavigationButtons: true }); - const pager = $pager.dxPager('instance'); + const pager = $pager.dxPagination('instance'); assert.equal(isLightMode(pager), true, 'lightModeEnabled is enabled'); @@ -1374,7 +1374,7 @@ function() { }); QUnit.test('Cancel light mode is only one', function(assert) { - const $pager = $('#container').width(100).dxPager({ + const $pager = $('#container').width(100).dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], @@ -1385,7 +1385,7 @@ function() { showNavigationButtons: true }); - const pager = $pager.dxPager('instance'); + const pager = $pager.dxPagination('instance'); const pageSizeEl = $pager.find('.dx-page-sizes')[0].children[0]; assert.ok(isLightMode(pager), 'pager is displayed in the light mode width:100'); @@ -1417,7 +1417,7 @@ function() { }); QUnit.test('Hide the info element when it does not fit in a container', function(assert) { - const $pager = $('#container').width(1000).dxPager({ + const $pager = $('#container').width(1000).dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], @@ -1426,7 +1426,7 @@ function() { infoText: 'Page {0} of {1} ({2} items)', pagesCountText: 'of' }); - const pager = $pager.dxPager('instance'); + const pager = $pager.dxPagination('instance'); $pager.width(getWidth($pager.find('.dx-page-sizes')) + getWidth($pager.find('.dx-pages')) - 50); _dimensionChanged(pager); @@ -1436,7 +1436,7 @@ function() { }); QUnit.test('Show the info element when it is fit in a container', function(assert) { - const $pager = $('#container').width(1000).dxPager({ + const $pager = $('#container').width(1000).dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], @@ -1445,7 +1445,7 @@ function() { infoText: 'Page {0} of {1} ({2} items)', pagesCountText: 'of' }); - const pager = $pager.dxPager('instance'); + const pager = $pager.dxPagination('instance'); const infoWidth = getWidth(pager._$info); setWidth( @@ -1465,7 +1465,7 @@ function() { }); QUnit.test('LightMode.Prev button is disabled when first page is chosen ', function(assert) { - const $pager = $('#container').dxPager({ + const $pager = $('#container').dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], @@ -1476,7 +1476,7 @@ function() { let isPageChanged; const $button = $('.dx-prev-button'); - const instance = $pager.dxPager('instance'); + const instance = $pager.dxPagination('instance'); instance.pageIndexChanged = function() { isPageChanged = true; @@ -1489,7 +1489,7 @@ function() { }); QUnit.test('LightMode.Next button is disabled when first page is chosen ', function(assert) { - const $pager = $('#container').dxPager({ + const $pager = $('#container').dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], @@ -1500,7 +1500,7 @@ function() { }); let isPageChanged; - const instance = $pager.dxPager('instance'); + const instance = $pager.dxPagination('instance'); instance.pageIndexChanged = function() { isPageChanged = true; @@ -1514,7 +1514,7 @@ function() { }); QUnit.test('Navigate buttons with rtl', function(assert) { - const $pager = $('#container').dxPager({ + const $pager = $('#container').dxPagination({ maxPagesCount: 8, pageCount: 10, itemCount: 50, @@ -1523,7 +1523,7 @@ function() { rtlEnabled: true, }); - const instance = $pager.dxPager('instance'); + const instance = $pager.dxPagination('instance'); let $button; instance.option('pageIndex', 8); @@ -1539,8 +1539,8 @@ function() { assert.equal(instance.option('pageIndex'), 8); }); - QUnit.test('dxPager render with RTL', function(assert) { - const pagerElement = $('#container').dxPager({ + QUnit.test('dxPagination render with RTL', function(assert) { + const pagerElement = $('#container').dxPagination({ maxPagesCount: 8, pageCount: 10, allowedPageSizes: [5, 10, 20], @@ -1548,7 +1548,7 @@ function() { rtlEnabled: true }); - const pagerInstance = pagerElement.dxPager('instance'); + const pagerInstance = pagerElement.dxPagination('instance'); let rtlTestSample = {}; let ltrTestSample = {}; @@ -1589,7 +1589,7 @@ function() { localization.loadMessages(dictionary); localization.locale('en'); - const pagerElement = $('#container').dxPager({ + const pagerElement = $('#container').dxPagination({ allowedPageSizes: ['all'], showNavigationButtons: true, showInfo: true @@ -1606,7 +1606,7 @@ function() { assert.equal(buttonPrev.attr('aria-label'), dictionary['en']['dxPager-prevPage'], 'correct aria-label for prev page on initial render'); localization.locale('fr'); - pagerElement.dxPager('instance').repaint(); + pagerElement.dxPagination('instance').repaint(); pageSize = pagerElement.find('.dx-page-size'); buttonNext = pagerElement.find('.dx-next-button'); From 41e3cabacae2b8a973e27eb4693b833abff0bf0e Mon Sep 17 00:00:00 2001 From: Roman Semenov Date: Tue, 8 Oct 2024 16:45:08 +0400 Subject: [PATCH 36/38] fix: forgotten hard-coded configs --- apps/demos/configs/Angular/config.js | 2 +- packages/devextreme-angular/tests/src/server/component-names.ts | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/apps/demos/configs/Angular/config.js b/apps/demos/configs/Angular/config.js index 85e49d587046..cc0ffeb9b20c 100644 --- a/apps/demos/configs/Angular/config.js +++ b/apps/demos/configs/Angular/config.js @@ -45,7 +45,7 @@ const componentNames = [ 'multi-view', 'nested', 'number-box', - 'pager', + 'pagination', 'pie-chart', 'pivot-grid-field-chooser', 'pivot-grid', diff --git a/packages/devextreme-angular/tests/src/server/component-names.ts b/packages/devextreme-angular/tests/src/server/component-names.ts index 3acdc2ba3466..d5914606f2ba 100644 --- a/packages/devextreme-angular/tests/src/server/component-names.ts +++ b/packages/devextreme-angular/tests/src/server/component-names.ts @@ -37,7 +37,7 @@ export const componentNames = [ 'menu', 'multi-view', 'number-box', - 'pager', + 'pagination', 'pie-chart', 'pivot-grid', 'pivot-grid-field-chooser', From ee3b475a75d045107940e990b655eeff30e41707 Mon Sep 17 00:00:00 2001 From: Roman Semenov Date: Wed, 9 Oct 2024 09:51:24 +0400 Subject: [PATCH 37/38] fix: rename PagerBaseOptions -> PagerBaseProperties --- .../devextreme-angular/src/common/index.ts | 2 +- .../src/ui/pagination/index.ts | 12 +++++------ packages/devextreme-react/src/common/index.ts | 2 +- packages/devextreme-vue/src/common/index.ts | 2 +- packages/devextreme/js/common.d.ts | 2 +- packages/devextreme/js/common/grids.d.ts | 6 +++--- packages/devextreme/js/ui/pager.d.ts | 6 +++--- packages/devextreme/ts/dx.all.d.ts | 20 +++++++++---------- 8 files changed, 26 insertions(+), 26 deletions(-) diff --git a/packages/devextreme-angular/src/common/index.ts b/packages/devextreme-angular/src/common/index.ts index 4c672e377702..7031f7d7eced 100644 --- a/packages/devextreme-angular/src/common/index.ts +++ b/packages/devextreme-angular/src/common/index.ts @@ -29,7 +29,7 @@ export { Orientation, PageLoadMode, PageOrientation, - PagerBaseOptions, + PagerBaseProperties, PatternRule, Position, PositionAlignment, diff --git a/packages/devextreme-angular/src/ui/pagination/index.ts b/packages/devextreme-angular/src/ui/pagination/index.ts index 7aaef7b2fbf4..bb0b9fc076f6 100644 --- a/packages/devextreme-angular/src/ui/pagination/index.ts +++ b/packages/devextreme-angular/src/ui/pagination/index.ts @@ -110,7 +110,7 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC /** - * [descr:PagerBaseOptions.displayMode] + * [descr:PagerBaseProperties.displayMode] */ @Input() @@ -188,7 +188,7 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC /** - * [descr:PagerBaseOptions.infoText] + * [descr:PagerBaseProperties.infoText] */ @Input() @@ -214,7 +214,7 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC /** - * [descr:PagerBaseOptions.label] + * [descr:PagerBaseProperties.label] */ @Input() @@ -266,7 +266,7 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC /** - * [descr:PagerBaseOptions.showInfo] + * [descr:PagerBaseProperties.showInfo] */ @Input() @@ -279,7 +279,7 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC /** - * [descr:PagerBaseOptions.showNavigationButtons] + * [descr:PagerBaseProperties.showNavigationButtons] */ @Input() @@ -292,7 +292,7 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC /** - * [descr:PagerBaseOptions.showPageSizeSelector] + * [descr:PagerBaseProperties.showPageSizeSelector] */ @Input() diff --git a/packages/devextreme-react/src/common/index.ts b/packages/devextreme-react/src/common/index.ts index 692639146c3a..38be9b2452cc 100644 --- a/packages/devextreme-react/src/common/index.ts +++ b/packages/devextreme-react/src/common/index.ts @@ -29,7 +29,7 @@ export { Orientation, PageLoadMode, PageOrientation, - PagerBaseOptions, + PagerBaseProperties, PatternRule, Position, PositionAlignment, diff --git a/packages/devextreme-vue/src/common/index.ts b/packages/devextreme-vue/src/common/index.ts index 692639146c3a..38be9b2452cc 100644 --- a/packages/devextreme-vue/src/common/index.ts +++ b/packages/devextreme-vue/src/common/index.ts @@ -29,7 +29,7 @@ export { Orientation, PageLoadMode, PageOrientation, - PagerBaseOptions, + PagerBaseProperties, PatternRule, Position, PositionAlignment, diff --git a/packages/devextreme/js/common.d.ts b/packages/devextreme/js/common.d.ts index 968ce46f85e1..31f9e8af7af0 100644 --- a/packages/devextreme/js/common.d.ts +++ b/packages/devextreme/js/common.d.ts @@ -849,7 +849,7 @@ export type DisplayMode = 'adaptive' | 'compact' | 'full'; * @hidden * @namespace DevExpress.common */ -export type PagerBaseOptions = { +export type PagerBaseProperties = { /** * @docid * @public diff --git a/packages/devextreme/js/common/grids.d.ts b/packages/devextreme/js/common/grids.d.ts index 44ba31a02412..36b9d77c3cb3 100644 --- a/packages/devextreme/js/common/grids.d.ts +++ b/packages/devextreme/js/common/grids.d.ts @@ -13,7 +13,7 @@ import { Sortable, SortOrder, ValidationRule, - PagerBaseOptions, + PagerBaseProperties, } from '../common'; import { @@ -2495,10 +2495,10 @@ export type NewRowPosition = 'first' | 'last' | 'pageBottom' | 'pageTop' | 'view /** * @docid * @public - * @inherits PagerBaseOptions + * @inherits PagerBaseProperties * @namespace DevExpress.common.grids */ -export type Pager = PagerBaseOptions & { +export type Pager = PagerBaseProperties & { /** * @docid * @public diff --git a/packages/devextreme/js/ui/pager.d.ts b/packages/devextreme/js/ui/pager.d.ts index 7841ff35bce9..4403b9668b76 100644 --- a/packages/devextreme/js/ui/pager.d.ts +++ b/packages/devextreme/js/ui/pager.d.ts @@ -1,6 +1,6 @@ import Widget, { WidgetOptions } from './widget/ui.widget'; import { - PagerBaseOptions, + PagerBaseProperties, } from '../common'; export { @@ -17,9 +17,9 @@ export type PageSize = number | 'all'; * @namespace DevExpress.ui * @public * @docid - * @inherits PagerBaseOptions + * @inherits PagerBaseProperties */ -export interface dxPaginationOptions extends PagerBaseOptions, WidgetOptions { +export interface dxPaginationOptions extends PagerBaseProperties, WidgetOptions { /** * @docid * @fires Properties.onOptionChanged diff --git a/packages/devextreme/ts/dx.all.d.ts b/packages/devextreme/ts/dx.all.d.ts index 750758ea9d28..acf1cfeb4570 100644 --- a/packages/devextreme/ts/dx.all.d.ts +++ b/packages/devextreme/ts/dx.all.d.ts @@ -1659,32 +1659,32 @@ declare module DevExpress.common { export type PageLoadMode = 'nextButton' | 'scrollBottom'; export type PageOrientation = 'portrait' | 'landscape'; /** - * [descr:PagerBaseOptions] + * [descr:PagerBaseProperties] * @deprecated Attention! This type is for internal purposes only. If you used it previously, please submit a ticket to our {@link https://supportcenter.devexpress.com/ticket/create Support Center}. We will check if there is an alternative solution. */ - export type PagerBaseOptions = { + export type PagerBaseProperties = { /** - * [descr:PagerBaseOptions.displayMode] + * [descr:PagerBaseProperties.displayMode] */ displayMode?: DisplayMode; /** - * [descr:PagerBaseOptions.infoText] + * [descr:PagerBaseProperties.infoText] */ infoText?: string; /** - * [descr:PagerBaseOptions.showInfo] + * [descr:PagerBaseProperties.showInfo] */ showInfo?: boolean; /** - * [descr:PagerBaseOptions.showNavigationButtons] + * [descr:PagerBaseProperties.showNavigationButtons] */ showNavigationButtons?: boolean; /** - * [descr:PagerBaseOptions.showPageSizeSelector] + * [descr:PagerBaseProperties.showPageSizeSelector] */ showPageSizeSelector?: boolean; /** - * [descr:PagerBaseOptions.label] + * [descr:PagerBaseProperties.label] */ label?: string; }; @@ -4320,7 +4320,7 @@ declare module DevExpress.common.grids { /** * [descr:Pager] */ - export type Pager = PagerBaseOptions & { + export type Pager = PagerBaseProperties & { /** * [descr:Pager.allowedPageSizes] */ @@ -21791,7 +21791,7 @@ declare module DevExpress.ui { * @deprecated [depNote:dxPaginationOptions] */ export interface dxPaginationOptions - extends DevExpress.common.PagerBaseOptions, + extends DevExpress.common.PagerBaseProperties, WidgetOptions { /** * [descr:dxPaginationOptions.pageIndex] From b7a6d1c37fbed7c22e0024420cdfe52ae75323bd Mon Sep 17 00:00:00 2001 From: Roman Semenov Date: Wed, 9 Oct 2024 10:08:37 +0400 Subject: [PATCH 38/38] fix: rename to PagerBase --- .../devextreme-angular/src/common/index.ts | 2 +- .../src/ui/pagination/index.ts | 12 +++++------ packages/devextreme-react/src/common/index.ts | 2 +- packages/devextreme-vue/src/common/index.ts | 2 +- packages/devextreme/js/common.d.ts | 2 +- packages/devextreme/js/common/grids.d.ts | 6 +++--- packages/devextreme/js/ui/pager.d.ts | 6 +++--- packages/devextreme/ts/dx.all.d.ts | 20 +++++++++---------- 8 files changed, 26 insertions(+), 26 deletions(-) diff --git a/packages/devextreme-angular/src/common/index.ts b/packages/devextreme-angular/src/common/index.ts index 7031f7d7eced..ccdb9057c493 100644 --- a/packages/devextreme-angular/src/common/index.ts +++ b/packages/devextreme-angular/src/common/index.ts @@ -29,7 +29,7 @@ export { Orientation, PageLoadMode, PageOrientation, - PagerBaseProperties, + PagerBase, PatternRule, Position, PositionAlignment, diff --git a/packages/devextreme-angular/src/ui/pagination/index.ts b/packages/devextreme-angular/src/ui/pagination/index.ts index bb0b9fc076f6..5b2f308a0ae0 100644 --- a/packages/devextreme-angular/src/ui/pagination/index.ts +++ b/packages/devextreme-angular/src/ui/pagination/index.ts @@ -110,7 +110,7 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC /** - * [descr:PagerBaseProperties.displayMode] + * [descr:PagerBase.displayMode] */ @Input() @@ -188,7 +188,7 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC /** - * [descr:PagerBaseProperties.infoText] + * [descr:PagerBase.infoText] */ @Input() @@ -214,7 +214,7 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC /** - * [descr:PagerBaseProperties.label] + * [descr:PagerBase.label] */ @Input() @@ -266,7 +266,7 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC /** - * [descr:PagerBaseProperties.showInfo] + * [descr:PagerBase.showInfo] */ @Input() @@ -279,7 +279,7 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC /** - * [descr:PagerBaseProperties.showNavigationButtons] + * [descr:PagerBase.showNavigationButtons] */ @Input() @@ -292,7 +292,7 @@ export class DxPaginationComponent extends DxComponent implements OnDestroy, OnC /** - * [descr:PagerBaseProperties.showPageSizeSelector] + * [descr:PagerBase.showPageSizeSelector] */ @Input() diff --git a/packages/devextreme-react/src/common/index.ts b/packages/devextreme-react/src/common/index.ts index 38be9b2452cc..4cddfd8869c9 100644 --- a/packages/devextreme-react/src/common/index.ts +++ b/packages/devextreme-react/src/common/index.ts @@ -29,7 +29,7 @@ export { Orientation, PageLoadMode, PageOrientation, - PagerBaseProperties, + PagerBase, PatternRule, Position, PositionAlignment, diff --git a/packages/devextreme-vue/src/common/index.ts b/packages/devextreme-vue/src/common/index.ts index 38be9b2452cc..4cddfd8869c9 100644 --- a/packages/devextreme-vue/src/common/index.ts +++ b/packages/devextreme-vue/src/common/index.ts @@ -29,7 +29,7 @@ export { Orientation, PageLoadMode, PageOrientation, - PagerBaseProperties, + PagerBase, PatternRule, Position, PositionAlignment, diff --git a/packages/devextreme/js/common.d.ts b/packages/devextreme/js/common.d.ts index 31f9e8af7af0..6b2a1902b9c2 100644 --- a/packages/devextreme/js/common.d.ts +++ b/packages/devextreme/js/common.d.ts @@ -849,7 +849,7 @@ export type DisplayMode = 'adaptive' | 'compact' | 'full'; * @hidden * @namespace DevExpress.common */ -export type PagerBaseProperties = { +export type PagerBase = { /** * @docid * @public diff --git a/packages/devextreme/js/common/grids.d.ts b/packages/devextreme/js/common/grids.d.ts index 36b9d77c3cb3..80f0a93c1ccc 100644 --- a/packages/devextreme/js/common/grids.d.ts +++ b/packages/devextreme/js/common/grids.d.ts @@ -13,7 +13,7 @@ import { Sortable, SortOrder, ValidationRule, - PagerBaseProperties, + PagerBase, } from '../common'; import { @@ -2495,10 +2495,10 @@ export type NewRowPosition = 'first' | 'last' | 'pageBottom' | 'pageTop' | 'view /** * @docid * @public - * @inherits PagerBaseProperties + * @inherits PagerBase * @namespace DevExpress.common.grids */ -export type Pager = PagerBaseProperties & { +export type Pager = PagerBase & { /** * @docid * @public diff --git a/packages/devextreme/js/ui/pager.d.ts b/packages/devextreme/js/ui/pager.d.ts index 4403b9668b76..6024a7aef341 100644 --- a/packages/devextreme/js/ui/pager.d.ts +++ b/packages/devextreme/js/ui/pager.d.ts @@ -1,6 +1,6 @@ import Widget, { WidgetOptions } from './widget/ui.widget'; import { - PagerBaseProperties, + PagerBase, } from '../common'; export { @@ -17,9 +17,9 @@ export type PageSize = number | 'all'; * @namespace DevExpress.ui * @public * @docid - * @inherits PagerBaseProperties + * @inherits PagerBase */ -export interface dxPaginationOptions extends PagerBaseProperties, WidgetOptions { +export interface dxPaginationOptions extends PagerBase, WidgetOptions { /** * @docid * @fires Properties.onOptionChanged diff --git a/packages/devextreme/ts/dx.all.d.ts b/packages/devextreme/ts/dx.all.d.ts index acf1cfeb4570..eaa32d8490cd 100644 --- a/packages/devextreme/ts/dx.all.d.ts +++ b/packages/devextreme/ts/dx.all.d.ts @@ -1659,32 +1659,32 @@ declare module DevExpress.common { export type PageLoadMode = 'nextButton' | 'scrollBottom'; export type PageOrientation = 'portrait' | 'landscape'; /** - * [descr:PagerBaseProperties] + * [descr:PagerBase] * @deprecated Attention! This type is for internal purposes only. If you used it previously, please submit a ticket to our {@link https://supportcenter.devexpress.com/ticket/create Support Center}. We will check if there is an alternative solution. */ - export type PagerBaseProperties = { + export type PagerBase = { /** - * [descr:PagerBaseProperties.displayMode] + * [descr:PagerBase.displayMode] */ displayMode?: DisplayMode; /** - * [descr:PagerBaseProperties.infoText] + * [descr:PagerBase.infoText] */ infoText?: string; /** - * [descr:PagerBaseProperties.showInfo] + * [descr:PagerBase.showInfo] */ showInfo?: boolean; /** - * [descr:PagerBaseProperties.showNavigationButtons] + * [descr:PagerBase.showNavigationButtons] */ showNavigationButtons?: boolean; /** - * [descr:PagerBaseProperties.showPageSizeSelector] + * [descr:PagerBase.showPageSizeSelector] */ showPageSizeSelector?: boolean; /** - * [descr:PagerBaseProperties.label] + * [descr:PagerBase.label] */ label?: string; }; @@ -4320,7 +4320,7 @@ declare module DevExpress.common.grids { /** * [descr:Pager] */ - export type Pager = PagerBaseProperties & { + export type Pager = PagerBase & { /** * [descr:Pager.allowedPageSizes] */ @@ -21791,7 +21791,7 @@ declare module DevExpress.ui { * @deprecated [depNote:dxPaginationOptions] */ export interface dxPaginationOptions - extends DevExpress.common.PagerBaseProperties, + extends DevExpress.common.PagerBase, WidgetOptions { /** * [descr:dxPaginationOptions.pageIndex]