Skip to content

Vite plugin for DevExtreme internal development#33323

Merged
aleksei-semikozov merged 15 commits intoDevExpress:26_1from
aleksei-semikozov:vite-plugin
Apr 23, 2026
Merged

Vite plugin for DevExtreme internal development#33323
aleksei-semikozov merged 15 commits intoDevExpress:26_1from
aleksei-semikozov:vite-plugin

Conversation

@aleksei-semikozov
Copy link
Copy Markdown
Contributor

No description provided.

@aleksei-semikozov aleksei-semikozov self-assigned this Apr 16, 2026
@aleksei-semikozov aleksei-semikozov force-pushed the vite-plugin branch 2 times, most recently from a990e48 to d37d283 Compare April 20, 2026 14:49
@aleksei-semikozov aleksei-semikozov marked this pull request as ready for review April 22, 2026 13:24
Copilot AI review requested due to automatic review settings April 22, 2026 13:24
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Adds a Vite-based playground workflow for DevExtreme internal development, including a custom Vite transform plugin and a small UI playground with theme switching.

Changes:

  • Introduces a custom Vite plugin (vite-plugin-devextreme) to Babel-transform DevExtreme sources during Vite dev.
  • Adds a new packages/devextreme/playground (HTML + TS entry + theme selector + styles) and a vite.config.ts to run it.
  • Updates DevExtreme package tooling (deps, Jest config, ESLint ignore list) and lockfile to support the new workflow.

Reviewed changes

Copilot reviewed 10 out of 11 changed files in this pull request and generated 4 comments.

Show a summary per file
File Description
pnpm-lock.yaml Adds Vite and Babel plugin entries required by the new dev workflow.
packages/devextreme/vite.config.ts New Vite configuration pointing to the playground and enabling the custom plugin + aliases.
packages/devextreme/build/vite-plugin-devextreme.ts New Vite plugin implementing Babel transforms and custom class-field/decorator handling.
packages/devextreme/build/vite-plugin-devextreme.test.ts Jest coverage for the custom Babel transforms used by the Vite plugin.
packages/devextreme/playground/index.html New playground HTML shell.
packages/devextreme/playground/index.ts New playground bootstrap (theme selector + sample dxCardView).
packages/devextreme/playground/themeSelector.ts Theme selection UI and runtime CSS theme loading.
packages/devextreme/playground/themeSelector.css Styling for the theme selector UI.
packages/devextreme/package.json Adds Vite script and Babel plugin devDependencies for the Vite transform.
packages/devextreme/jest.config.js Extends node-tests project to allow .ts tests (for the new plugin test).
packages/devextreme/eslint.config.mjs Ignores vite.config.ts in this package.
Files not reviewed (1)
  • pnpm-lock.yaml: Language not supported

Comment thread packages/devextreme/build/vite-plugin-devextreme.ts
Comment thread packages/devextreme/build/vite-plugin-devextreme.ts
Comment thread packages/devextreme/playground/themeSelector.ts Outdated
Comment thread packages/devextreme/package.json Outdated
<body class="dx-viewport">
<div id="app">
<div id="theme-selector"></div>
<div id="container"></div>
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.

Is it a container or a component element? If component let's rename the id)

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.

renamed to widget-container

marker-dao
marker-dao previously approved these changes Apr 22, 2026
r-farkhutdinov
r-farkhutdinov previously approved these changes Apr 23, 2026
Comment thread packages/devextreme/package.json Outdated
"typescript-min": "npm:typescript@4.9.5",
"uuid": "9.0.1",
"vinyl": "2.2.1",
"vite": "^7.3.2",
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.

Suggested change
"vite": "^7.3.2",
"vite": "^8.0.8",

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.

done

Copilot AI review requested due to automatic review settings April 23, 2026 09:31
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 10 out of 11 changed files in this pull request and generated 7 comments.

Files not reviewed (1)
  • pnpm-lock.yaml: Language not supported

Comment thread packages/devextreme/vite.config.ts
Comment thread packages/devextreme/playground/index.ts Outdated
Comment thread packages/devextreme/playground/themeSelector.ts Outdated
Comment thread packages/devextreme/playground/themeSelector.ts Outdated
Comment thread packages/devextreme/playground/index.ts
Comment thread packages/devextreme/build/vite-plugin-devextreme.test.ts Outdated
Comment thread packages/devextreme/package.json Outdated
Copilot AI review requested due to automatic review settings April 23, 2026 10:00
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 10 out of 11 changed files in this pull request and generated 2 comments.

Files not reviewed (1)
  • pnpm-lock.yaml: Language not supported

Comment thread packages/devextreme/build/vite-plugin-devextreme.test.ts
Comment thread packages/devextreme/playground/themeSelector.ts
Copilot AI review requested due to automatic review settings April 23, 2026 10:27
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 10 out of 11 changed files in this pull request and generated 1 comment.

Files not reviewed (1)
  • pnpm-lock.yaml: Language not supported

Comment thread packages/devextreme/vite.config.ts
Copilot AI review requested due to automatic review settings April 23, 2026 11:02
Copy link
Copy Markdown
Contributor

Copilot AI left a comment

Choose a reason for hiding this comment

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

Pull request overview

Copilot reviewed 9 out of 10 changed files in this pull request and generated 3 comments.

Files not reviewed (1)
  • pnpm-lock.yaml: Language not supported

Comment thread packages/devextreme/build/vite-plugin-devextreme.ts
Comment thread packages/devextreme/playground/themeSelector.ts
Comment thread packages/devextreme/eslint.config.mjs
@aleksei-semikozov aleksei-semikozov merged commit 4af8b9e into DevExpress:26_1 Apr 23, 2026
107 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

Projects

None yet

Development

Successfully merging this pull request may close these issues.

6 participants