iron-icons are not showing on UI in Vaadin 23

Hello i just updated the Vaadin version(using the latest one) and observed that some of the iron icons which are defined inside template renderer are missing from UI

I have seen some answers for the same issue which says change iron to vaadin and use @icon annotation it actually works

But i really dont want to use vaadin icon
Its height and width is not getting fit in some of the cases ,even if i change it i need to do lots of css changes and manager will not agree with it

Is there any way to keep working iron icons in vaadin 23

iron-icons are not showing on UI in Vaadin 23

Hello. Yes, you can use iron icons. In Vaadin 23 you need to manually add the import. Could you give an example of the icons you have in your app?

My answer on StackOverflow may help: https://stackoverflow.com/questions/69884343/where-has-htmlimport-annotation-gone.

Thanks for the prompt response
Basically, I have a tree grid structure with children’s

My Code

protected static class MyTreeGrid extends TreeGrid {

public Column addHierarchyColumn(ValueProvider<T, ?> valueProvider) {
Column column = addColumn(TemplateRenderer
.of(“<vaadin-my-tree-grid”

  • “leaf=‘[[item.leaf]]’ expanded=‘{{expanded}}’ level=‘[[level]]’>”
  • “<iron-icon class="My-description-icon" icon= "[[item.iconType]]">”
    .withProperty(“leaf”, item → !getDataCommunicator().hasChildren(item))
    //It returns icon type like folder,pinned icon etc
    .withProperty(“iconType”, item → MyLiberary.getIconOf(item).getElement().getAttribute(“icon”))
    .setResizable(true)
    .setWidth(“30em”);

I have already tried this way but it doesnt works :slightly_smiling_face:

You probably have to add @Uses(IronIcon.class) on your tree grid implementation because IronIcon is not used by Vaadin now and it CAN know that you are using it within a string literal on the java side. The annotation should tell the Vaadin Maven Plugin that you use this class and imports the missing JS. Keep in mind that this is going to break with V24.

So @quirky-zebra even if I solve this using @Uses(ironicon.class) now ,will it again arise in the next updates ?

Correct, IronIcon is deprecated to be removed in the next major Release coming early 2023

What is the alternative for IronIcon ? I’m migrating from V14 to V24 and there are many using this IronIcon

VaadinIcon