Vaadin 25 Compatibility Issue

Themeselect Addon - Vaadin 25 Compatibility Issue

Summary

The themeselect addon (version 1.0.2) is incompatible with Vaadin 25.0.0 due to a changed import path in the Vaadin web components.

Error Details

When building with Vaadin 25.0.0, the following error occurs:

[vite]: Rollup failed to resolve import "@vaadin/select/vaadin-lit-select" from 
".../generated/jar-resources/themeselect/theme-select.ts".

Root Cause

In the file theme-select.ts (line 1), the addon uses:

import '@vaadin/select/vaadin-lit-select';

However, in @vaadin/select@25.0.0, this export path no longer exists.

Vaadin 25 Package Structure for @vaadin/select

@vaadin/select/
โ”œโ”€โ”€ lit.js                    โ†’ exports only: './src/lit/renderer-directives.js'
โ”œโ”€โ”€ vaadin-select.js          โ†’ main component export
โ””โ”€โ”€ src/
    โ”œโ”€โ”€ lit/
    โ”‚   โ””โ”€โ”€ renderer-directives.js
    โ””โ”€โ”€ vaadin-select.js

There is no vaadin-lit-select or vaadin-lit-select.js file/export.

Workaround for Users

Users can add a Vite resolve alias in their vite.config.ts:

const customConfig: UserConfigFn = (env) => ({
  resolve: {
    alias: {
      '@vaadin/select/vaadin-lit-select': '@vaadin/select'
    }
  }
});

Environment

  • Vaadin version: 25.0.0
  • @vaadin/select version: 25.0.0
  • Vite version: 7.3.0
  • themeselect addon version: 1.0.2

Additional Notes

The addon is distributed via the Vaadin Addons repository (https://maven.vaadin.com/vaadin-addons) with Maven coordinates:

<dependency>
    <groupId>org.vaadin.addons.themeselect</groupId>
    <artifactId>themeselect</artifactId>
    <version>1.0.2</version>
</dependency>
1 Like

Thanks for the report. I copied the issue to GitHub: Vaadin 25 Compatibility Issue ยท Issue #5 ยท jouni/theme-select ยท GitHub

Iโ€™m happy to accept a pull request, if anyone has time to make one.