public @NotNull ShowItem dataComponents(final @NotNull Map<Key, DataComponentValue> holder) {
      if (Objects.equals(this.dataComponents, holder)) return this;
      return new ShowItem(this.item, this.count, null, holder.isEmpty() ? Collections.emptyMap() : Collections.unmodifiableMap(new HashMap<>(holder)));
    }
Set the data components used on this item.

<p>This will clear any legacy NBT-format data on the item.</p>

@param holder the new data components to set
@return a show item data object that has the provided components
@since 4.17.0
@sinceMinecraft 1.20.5
api/src/main/java/net/kyori/adventure/text/event/HoverEvent.java