Skip to content

Scheduler — Refactor scheduler.d.ts file#34247

Closed
sjbur wants to merge 8 commits into
DevExpress:mainfrom
sjbur:issue-4569_26_2
Closed

Scheduler — Refactor scheduler.d.ts file#34247
sjbur wants to merge 8 commits into
DevExpress:mainfrom
sjbur:issue-4569_26_2

Conversation

@sjbur

@sjbur sjbur commented Jul 9, 2026

Copy link
Copy Markdown
Contributor

No description provided.

@sjbur sjbur self-assigned this Jul 9, 2026
@sjbur sjbur added the 26_2 label Jul 9, 2026
menuItemTemplate: {},
name: String as PropType<string | FormPredefinedButtonItem | SchedulerPredefinedToolbarItem>,
options: Object as PropType<DateNavigatorItemProperties | Record<string, any> | dxButtonGroupOptions>,
options: Object as PropType<DateNavigatorItemProperties | Record<string, any>>,

Copy link
Copy Markdown
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

DateNavigatorItemProperties extends dxButtonGroupOptions, so there is no need for dxButtonGroupOptions here

@github-actions github-actions Bot added the .d.ts label Jul 9, 2026
@sjbur sjbur marked this pull request as ready for review July 9, 2026 13:44
@sjbur sjbur requested a review from a team as a code owner July 9, 2026 13:44
Copilot AI review requested due to automatic review settings July 9, 2026 13:44

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Refactors the Scheduler TypeScript declaration surface to use the public Properties type aliases (instead of the deprecated dxSchedulerOptions) and to reference nested widget types (dxButtonGroup.Item, dxToolbar.Item) consistently across bundled declarations and wrapper typings.

Changes:

  • Updated dxScheduler to extend Widget<DevExpress.ui.dxScheduler.Properties> / Widget<Properties> rather than Widget<dxSchedulerOptions>.
  • Refined dxSchedulerOptions to Omit and then explicitly redeclare base widget event handlers with Scheduler-specific event types.
  • Normalized DateNavigatorItemProperties / ToolbarItem to use dxButtonGroup.Properties + dxButtonGroup.Item and dxToolbar.Item, and adjusted Vue wrapper prop unions accordingly.

Reviewed changes

Copilot reviewed 1 out of 3 changed files in this pull request and generated no comments.

File Description
packages/devextreme/ts/dx.all.d.ts Aligns bundled Scheduler typings to use DevExpress.ui.dxScheduler.Properties and nested widget Properties/Item types.
packages/devextreme/js/ui/scheduler.d.ts Refactors Scheduler public typings: Properties-based widget generic, explicit event overrides via Omit, and normalized toolbar/date navigator related types.
packages/devextreme-vue/src/scheduler.ts Updates Vue wrapper prop typings to match the refactored Scheduler type definitions (removes redundant dxButtonGroupOptions union member).

@mpreyskurantov mpreyskurantov left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

blocked,
should be a feature branch from the upstream remote (not a fork),
in the feature/* name format

@sjbur sjbur closed this Jul 10, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

4 participants