Interface Component

    • Field Detail

      • EQUALS

        static final java.util.function.BiPredicate<? super Component,​? super Component> EQUALS
        A predicate that checks equality of two Components using Objects.equals(Object, Object).
        Since:
        4.8.0
      • EQUALS_IDENTITY

        static final java.util.function.BiPredicate<? super Component,​? super Component> EQUALS_IDENTITY
        A predicate that checks equality of two Components using identity equality.
        Since:
        4.8.0
      • IS_NOT_EMPTY

        static final java.util.function.Predicate<? super Component> IS_NOT_EMPTY
        A predicate that excludes empty().
        Since:
        4.10.0
    • Method Detail

      • empty

        @NotNull
        static @NotNull TextComponent empty()
        Gets an empty component.
        Returns:
        an empty component
        Since:
        4.0.0
      • newline

        @NotNull
        static @NotNull TextComponent newline()
        Gets a text component with a new line character as the content.
        Returns:
        a text component with a new line character as the content
        Since:
        4.0.0
      • space

        @NotNull
        static @NotNull TextComponent space()
        Gets a text immutable component with a single space as the content.
        Returns:
        a text component with a single space as the content
        Since:
        4.0.0
      • toComponent

        @NotNull
        static @NotNull java.util.stream.Collector<Component,​? extends ComponentBuilder<?,​?>,​Component> toComponent()
        Create a collector that will join components without a separator.
        Returns:
        a collector that can join components
        Since:
        4.6.0
      • toComponent

        @NotNull
        static @NotNull java.util.stream.Collector<Component,​? extends ComponentBuilder<?,​?>,​Component> toComponent​(@NotNull
                                                                                                                                      @NotNull Component separator)
        Create a collector that will join components using the provided separator.
        Parameters:
        separator - the separator to join with
        Returns:
        a collector that can join components
        Since:
        4.6.0
      • blockNBT

        @Contract(pure=true)
        static @NotNull BlockNBTComponent.Builder blockNBT()
        Creates a block NBT component builder.
        Returns:
        a builder
        Since:
        4.0.0
      • blockNBT

        @Contract("_ -> new")
        @NotNull
        static @NotNull BlockNBTComponent blockNBT​(@NotNull
                                                   @NotNull java.util.function.Consumer<? super BlockNBTComponent.Builder> consumer)
        Creates a block NBT component by applying configuration from consumer.
        Parameters:
        consumer - the builder configurator
        Returns:
        a block NBT component
        Since:
        4.0.0
      • blockNBT

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull BlockNBTComponent blockNBT​(@NotNull
                                                   @NotNull java.lang.String nbtPath,
                                                   @NotNull BlockNBTComponent.Pos pos)
        Creates a block NBT component with a position.
        Parameters:
        nbtPath - the nbt path
        pos - the block position
        Returns:
        a block NBT component
        Since:
        4.0.0
      • blockNBT

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull BlockNBTComponent blockNBT​(@NotNull
                                                   @NotNull java.lang.String nbtPath,
                                                   boolean interpret,
                                                   @NotNull BlockNBTComponent.Pos pos)
        Creates a block NBT component with a position.
        Parameters:
        nbtPath - the nbt path
        interpret - whether to interpret
        pos - the block position
        Returns:
        a block NBT component
        Since:
        4.0.0
      • blockNBT

        @Contract(value="_, _, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull BlockNBTComponent blockNBT​(@NotNull
                                                   @NotNull java.lang.String nbtPath,
                                                   boolean interpret,
                                                   @Nullable
                                                   @Nullable ComponentLike separator,
                                                   @NotNull BlockNBTComponent.Pos pos)
        Creates a block NBT component with a position.
        Parameters:
        nbtPath - the nbt path
        interpret - whether to interpret
        separator - the separator
        pos - the block position
        Returns:
        a block NBT component
        Since:
        4.8.0
      • entityNBT

        @Contract(pure=true)
        static @NotNull EntityNBTComponent.Builder entityNBT()
        Creates an entity NBT component builder.
        Returns:
        a builder
        Since:
        4.0.0
      • entityNBT

        @Contract("_ -> new")
        @NotNull
        static @NotNull EntityNBTComponent entityNBT​(@NotNull
                                                     @NotNull java.util.function.Consumer<? super EntityNBTComponent.Builder> consumer)
        Creates a entity NBT component by applying configuration from consumer.
        Parameters:
        consumer - the builder configurator
        Returns:
        an entity NBT component
        Since:
        4.0.0
      • entityNBT

        @Contract("_, _ -> new")
        @NotNull
        static @NotNull EntityNBTComponent entityNBT​(@NotNull
                                                     @NotNull java.lang.String nbtPath,
                                                     @NotNull
                                                     @NotNull java.lang.String selector)
        Creates a entity NBT component with a position.
        Parameters:
        nbtPath - the nbt path
        selector - the selector
        Returns:
        an entity NBT component
        Since:
        4.0.0
      • keybind

        @Contract(pure=true)
        static @NotNull KeybindComponent.Builder keybind()
        Creates a keybind component builder.
        Returns:
        a builder
        Since:
        4.0.0
      • keybind

        @Contract("_ -> new")
        @NotNull
        static @NotNull KeybindComponent keybind​(@NotNull
                                                 @NotNull java.util.function.Consumer<? super KeybindComponent.Builder> consumer)
        Creates a keybind component by applying configuration from consumer.
        Parameters:
        consumer - the builder configurator
        Returns:
        the keybind component
        Since:
        4.0.0
      • keybind

        @Contract(value="_ -> new",
                  pure=true)
        @NotNull
        static @NotNull KeybindComponent keybind​(@NotNull
                                                 @NotNull java.lang.String keybind)
        Creates a keybind component with a keybind.
        Parameters:
        keybind - the keybind
        Returns:
        the keybind component
        Since:
        4.0.0
      • keybind

        @Contract(value="_ -> new",
                  pure=true)
        @NotNull
        static @NotNull KeybindComponent keybind​(@NotNull KeybindComponent.KeybindLike keybind)
        Creates a keybind component with a keybind.
        Parameters:
        keybind - the keybind
        Returns:
        the keybind component
        Since:
        4.9.0
      • keybind

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull KeybindComponent keybind​(@NotNull
                                                 @NotNull java.lang.String keybind,
                                                 @NotNull
                                                 @NotNull Style style)
        Creates a keybind component with a keybind and styling.
        Parameters:
        keybind - the keybind
        style - the style
        Returns:
        the keybind component
        Since:
        4.0.0
      • keybind

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull KeybindComponent keybind​(@NotNull KeybindComponent.KeybindLike keybind,
                                                 @NotNull
                                                 @NotNull Style style)
        Creates a keybind component with a keybind and styling.
        Parameters:
        keybind - the keybind
        style - the style
        Returns:
        the keybind component
        Since:
        4.9.0
      • keybind

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull KeybindComponent keybind​(@NotNull
                                                 @NotNull java.lang.String keybind,
                                                 @Nullable
                                                 @Nullable TextColor color)
        Creates a keybind component with a keybind, and optional color.
        Parameters:
        keybind - the keybind
        color - the color
        Returns:
        the keybind component
        Since:
        4.0.0
      • keybind

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull KeybindComponent keybind​(@NotNull KeybindComponent.KeybindLike keybind,
                                                 @Nullable
                                                 @Nullable TextColor color)
        Creates a keybind component with a keybind, and optional color.
        Parameters:
        keybind - the keybind
        color - the color
        Returns:
        the keybind component
        Since:
        4.9.0
      • keybind

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull KeybindComponent keybind​(@NotNull
                                                 @NotNull java.lang.String keybind,
                                                 @Nullable
                                                 @Nullable TextColor color,
                                                 TextDecoration @NotNull ... decorations)
        Creates a keybind component with a keybind, and optional color and decorations.
        Parameters:
        keybind - the keybind
        color - the color
        decorations - the decorations
        Returns:
        the keybind component
        Since:
        4.0.0
      • keybind

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull KeybindComponent keybind​(@NotNull KeybindComponent.KeybindLike keybind,
                                                 @Nullable
                                                 @Nullable TextColor color,
                                                 TextDecoration @NotNull ... decorations)
        Creates a keybind component with a keybind, and optional color and decorations.
        Parameters:
        keybind - the keybind
        color - the color
        decorations - the decorations
        Returns:
        the keybind component
        Since:
        4.9.0
      • keybind

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull KeybindComponent keybind​(@NotNull
                                                 @NotNull java.lang.String keybind,
                                                 @Nullable
                                                 @Nullable TextColor color,
                                                 @NotNull
                                                 @NotNull java.util.Set<TextDecoration> decorations)
        Creates a keybind component with a keybind, and optional color and decorations.
        Parameters:
        keybind - the keybind
        color - the color
        decorations - the decorations
        Returns:
        the keybind component
        Since:
        4.0.0
      • keybind

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull KeybindComponent keybind​(@NotNull KeybindComponent.KeybindLike keybind,
                                                 @Nullable
                                                 @Nullable TextColor color,
                                                 @NotNull
                                                 @NotNull java.util.Set<TextDecoration> decorations)
        Creates a keybind component with a keybind, and optional color and decorations.
        Parameters:
        keybind - the keybind
        color - the color
        decorations - the decorations
        Returns:
        the keybind component
        Since:
        4.9.0
      • score

        @Contract(pure=true)
        static @NotNull ScoreComponent.Builder score()
        Creates a score component builder.
        Returns:
        a builder
        Since:
        4.0.0
      • score

        @Contract("_ -> new")
        @NotNull
        static @NotNull ScoreComponent score​(@NotNull
                                             @NotNull java.util.function.Consumer<? super ScoreComponent.Builder> consumer)
        Creates a score component by applying configuration from consumer.
        Parameters:
        consumer - the builder configurator
        Returns:
        a score component
        Since:
        4.0.0
      • score

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull ScoreComponent score​(@NotNull
                                             @NotNull java.lang.String name,
                                             @NotNull
                                             @NotNull java.lang.String objective)
        Creates a score component with a name and objective.
        Parameters:
        name - the score name
        objective - the score objective
        Returns:
        a score component
        Since:
        4.0.0
      • score

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @Deprecated
        @NotNull
        static @NotNull ScoreComponent score​(@NotNull
                                             @NotNull java.lang.String name,
                                             @NotNull
                                             @NotNull java.lang.String objective,
                                             @Nullable
                                             @Nullable java.lang.String value)
        Deprecated.
        since 4.7.0, not for removal, with no replacement. The value field is no longer supported in 1.16.5.
        Creates a score component with a name, objective, and optional value.
        Parameters:
        name - the score name
        objective - the score objective
        value - the value
        Returns:
        a score component
        Since:
        4.0.0
      • selector

        @Contract(pure=true)
        static @NotNull SelectorComponent.Builder selector()
        Creates a selector component builder.
        Returns:
        a builder
        Since:
        4.0.0
      • selector

        @Contract("_ -> new")
        @NotNull
        static @NotNull SelectorComponent selector​(@NotNull
                                                   @NotNull java.util.function.Consumer<? super SelectorComponent.Builder> consumer)
        Creates a selector component by applying configuration from consumer.
        Parameters:
        consumer - the builder configurator
        Returns:
        a selector component
        Since:
        4.0.0
      • selector

        @Contract(value="_ -> new",
                  pure=true)
        @NotNull
        static @NotNull SelectorComponent selector​(@NotNull
                                                   @NotNull java.lang.String pattern)
        Creates a selector component with a pattern.
        Parameters:
        pattern - the selector pattern
        Returns:
        a selector component
        Since:
        4.0.0
      • selector

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull SelectorComponent selector​(@NotNull
                                                   @NotNull java.lang.String pattern,
                                                   @Nullable
                                                   @Nullable ComponentLike separator)
        Creates a selector component with a pattern.
        Parameters:
        pattern - the selector pattern
        separator - the separator
        Returns:
        a selector component
        Since:
        4.8.0
      • storageNBT

        @Contract(pure=true)
        static @NotNull StorageNBTComponent.Builder storageNBT()
        Creates an storage NBT component builder.
        Returns:
        a builder
        Since:
        4.0.0
      • storageNBT

        @Contract("_ -> new")
        @NotNull
        static @NotNull StorageNBTComponent storageNBT​(@NotNull
                                                       @NotNull java.util.function.Consumer<? super StorageNBTComponent.Builder> consumer)
        Creates a storage NBT component by applying configuration from consumer.
        Parameters:
        consumer - the builder configurator
        Returns:
        a storage NBT component
        Since:
        4.0.0
      • storageNBT

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull StorageNBTComponent storageNBT​(@NotNull
                                                       @NotNull java.lang.String nbtPath,
                                                       @NotNull
                                                       @NotNull Key storage)
        Creates a storage NBT component with a path and an storage ID.
        Parameters:
        nbtPath - the nbt path
        storage - the identifier of the storage
        Returns:
        a storage NBT component
        Since:
        4.0.0
      • storageNBT

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull StorageNBTComponent storageNBT​(@NotNull
                                                       @NotNull java.lang.String nbtPath,
                                                       boolean interpret,
                                                       @NotNull
                                                       @NotNull Key storage)
        Creates a storage NBT component with a path and an storage ID.
        Parameters:
        nbtPath - the nbt path
        interpret - whether to interpret
        storage - the identifier of the storage
        Returns:
        a storage NBT component
        Since:
        4.0.0
      • storageNBT

        @Contract(value="_, _, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull StorageNBTComponent storageNBT​(@NotNull
                                                       @NotNull java.lang.String nbtPath,
                                                       boolean interpret,
                                                       @Nullable
                                                       @Nullable ComponentLike separator,
                                                       @NotNull
                                                       @NotNull Key storage)
        Creates a storage NBT component with a path and an storage ID.
        Parameters:
        nbtPath - the nbt path
        interpret - whether to interpret
        separator - the separator
        storage - the identifier of the storage
        Returns:
        a storage NBT component
        Since:
        4.8.0
      • text

        @Contract(pure=true)
        static @NotNull TextComponent.Builder text()
        Creates a text component builder.
        Returns:
        a builder
        Since:
        4.0.0
      • textOfChildren

        @NotNull
        static @NotNull TextComponent textOfChildren​(@NotNull
                                                     @NotNull ComponentLike @NotNull ... components)
        Creates a text component with components as the children.
        Parameters:
        components - the children
        Returns:
        a text component
        Since:
        4.10.0
      • text

        @Contract("_ -> new")
        @NotNull
        static @NotNull TextComponent text​(@NotNull
                                           @NotNull java.util.function.Consumer<? super TextComponent.Builder> consumer)
        Creates a text component by applying configuration from consumer.
        Parameters:
        consumer - the builder configurator
        Returns:
        the text component
        Since:
        4.0.0
      • text

        @Contract(value="_ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(@NotNull
                                           @NotNull java.lang.String content)
        Creates a text component with content.
        Parameters:
        content - the plain text content
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(@NotNull
                                           @NotNull java.lang.String content,
                                           @NotNull
                                           @NotNull Style style)
        Creates a text component with content and styling.
        Parameters:
        content - the plain text content
        style - the style
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(@NotNull
                                           @NotNull java.lang.String content,
                                           @Nullable
                                           @Nullable TextColor color)
        Creates a text component with content, and optional color.
        Parameters:
        content - the plain text content
        color - the color
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(@NotNull
                                           @NotNull java.lang.String content,
                                           @Nullable
                                           @Nullable TextColor color,
                                           TextDecoration @NotNull ... decorations)
        Creates a text component with content, and optional color and decorations.
        Parameters:
        content - the plain text content
        color - the color
        decorations - the decorations
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(@NotNull
                                           @NotNull java.lang.String content,
                                           @Nullable
                                           @Nullable TextColor color,
                                           @NotNull
                                           @NotNull java.util.Set<TextDecoration> decorations)
        Creates a text component with content, and optional color and decorations.
        Parameters:
        content - the plain text content
        color - the color
        decorations - the decorations
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(boolean value)
        Creates a text component with the content of String.valueOf(boolean).
        Parameters:
        value - the boolean value
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(boolean value,
                                           @NotNull
                                           @NotNull Style style)
        Creates a text component with the content of String.valueOf(boolean) and styling.
        Parameters:
        value - the boolean value
        style - the style
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(boolean value,
                                           @Nullable
                                           @Nullable TextColor color)
        Creates a text component with the content of String.valueOf(boolean), and optional color.
        Parameters:
        value - the boolean value
        color - the color
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(boolean value,
                                           @Nullable
                                           @Nullable TextColor color,
                                           TextDecoration @NotNull ... decorations)
        Creates a text component with the content of String.valueOf(boolean), and optional color and decorations.
        Parameters:
        value - the boolean value
        color - the color
        decorations - the decorations
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(boolean value,
                                           @Nullable
                                           @Nullable TextColor color,
                                           @NotNull
                                           @NotNull java.util.Set<TextDecoration> decorations)
        Creates a text component with the content of String.valueOf(boolean), and optional color and decorations.
        Parameters:
        value - the boolean value
        color - the color
        decorations - the decorations
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(pure=true)
        @NotNull
        static @NotNull TextComponent text​(char value)
        Creates a text component with the content of String.valueOf(char).
        Parameters:
        value - the char value
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(char value,
                                           @NotNull
                                           @NotNull Style style)
        Creates a text component with the content of String.valueOf(char) and styling.
        Parameters:
        value - the char value
        style - the style
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(char value,
                                           @Nullable
                                           @Nullable TextColor color)
        Creates a text component with the content of String.valueOf(char), and optional color.
        Parameters:
        value - the char value
        color - the color
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(char value,
                                           @Nullable
                                           @Nullable TextColor color,
                                           TextDecoration @NotNull ... decorations)
        Creates a text component with the content of String.valueOf(char), and optional color and decorations.
        Parameters:
        value - the char value
        color - the color
        decorations - the decorations
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(char value,
                                           @Nullable
                                           @Nullable TextColor color,
                                           @NotNull
                                           @NotNull java.util.Set<TextDecoration> decorations)
        Creates a text component with the content of String.valueOf(char), and optional color and decorations.
        Parameters:
        value - the char value
        color - the color
        decorations - the decorations
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(double value)
        Creates a text component with the content of String.valueOf(double).
        Parameters:
        value - the double value
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(double value,
                                           @NotNull
                                           @NotNull Style style)
        Creates a text component with the content of String.valueOf(double) and styling.
        Parameters:
        value - the double value
        style - the style
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(double value,
                                           @Nullable
                                           @Nullable TextColor color)
        Creates a text component with the content of String.valueOf(double), and optional color.
        Parameters:
        value - the double value
        color - the color
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(double value,
                                           @Nullable
                                           @Nullable TextColor color,
                                           TextDecoration @NotNull ... decorations)
        Creates a text component with the content of String.valueOf(double), and optional color and decorations.
        Parameters:
        value - the double value
        color - the color
        decorations - the decorations
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(double value,
                                           @Nullable
                                           @Nullable TextColor color,
                                           @NotNull
                                           @NotNull java.util.Set<TextDecoration> decorations)
        Creates a text component with the content of String.valueOf(double), and optional color and decorations.
        Parameters:
        value - the double value
        color - the color
        decorations - the decorations
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(float value)
        Creates a text component with the content of String.valueOf(float).
        Parameters:
        value - the float value
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(float value,
                                           @NotNull
                                           @NotNull Style style)
        Creates a text component with the content of String.valueOf(float) and styling.
        Parameters:
        value - the float value
        style - the style
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(float value,
                                           @Nullable
                                           @Nullable TextColor color)
        Creates a text component with the content of String.valueOf(float), and optional color.
        Parameters:
        value - the float value
        color - the color
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(float value,
                                           @Nullable
                                           @Nullable TextColor color,
                                           TextDecoration @NotNull ... decorations)
        Creates a text component with the content of String.valueOf(float), and optional color and decorations.
        Parameters:
        value - the float value
        color - the color
        decorations - the decorations
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(float value,
                                           @Nullable
                                           @Nullable TextColor color,
                                           @NotNull
                                           @NotNull java.util.Set<TextDecoration> decorations)
        Creates a text component with the content of String.valueOf(float), and optional color and decorations.
        Parameters:
        value - the float value
        color - the color
        decorations - the decorations
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(int value)
        Creates a text component with the content of String.valueOf(int).
        Parameters:
        value - the int value
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(int value,
                                           @NotNull
                                           @NotNull Style style)
        Creates a text component with the content of String.valueOf(int) and styling.
        Parameters:
        value - the int value
        style - the style
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(int value,
                                           @Nullable
                                           @Nullable TextColor color)
        Creates a text component with the content of String.valueOf(int), and optional color.
        Parameters:
        value - the int value
        color - the color
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(int value,
                                           @Nullable
                                           @Nullable TextColor color,
                                           TextDecoration @NotNull ... decorations)
        Creates a text component with the content of String.valueOf(int), and optional color and decorations.
        Parameters:
        value - the int value
        color - the color
        decorations - the decorations
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(int value,
                                           @Nullable
                                           @Nullable TextColor color,
                                           @NotNull
                                           @NotNull java.util.Set<TextDecoration> decorations)
        Creates a text component with the content of String.valueOf(int), and optional color and decorations.
        Parameters:
        value - the int value
        color - the color
        decorations - the decorations
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(long value)
        Creates a text component with the content of String.valueOf(long).
        Parameters:
        value - the long value
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(long value,
                                           @NotNull
                                           @NotNull Style style)
        Creates a text component with the content of String.valueOf(long) and styling.
        Parameters:
        value - the long value
        style - the style
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(long value,
                                           @Nullable
                                           @Nullable TextColor color)
        Creates a text component with the content of String.valueOf(long), and optional color.
        Parameters:
        value - the long value
        color - the color
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(long value,
                                           @Nullable
                                           @Nullable TextColor color,
                                           TextDecoration @NotNull ... decorations)
        Creates a text component with the content of String.valueOf(long), and optional color and decorations.
        Parameters:
        value - the long value
        color - the color
        decorations - the decorations
        Returns:
        a text component
        Since:
        4.0.0
      • text

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TextComponent text​(long value,
                                           @Nullable
                                           @Nullable TextColor color,
                                           @NotNull
                                           @NotNull java.util.Set<TextDecoration> decorations)
        Creates a text component with the content of String.valueOf(long), and optional color and decorations.
        Parameters:
        value - the long value
        color - the color
        decorations - the decorations
        Returns:
        a text component
        Since:
        4.0.0
      • translatable

        @Contract(pure=true)
        static @NotNull TranslatableComponent.Builder translatable()
        Creates a translatable component builder.
        Returns:
        a builder
        Since:
        4.0.0
      • translatable

        @Contract("_ -> new")
        @NotNull
        static @NotNull TranslatableComponent translatable​(@NotNull
                                                           @NotNull java.util.function.Consumer<? super TranslatableComponent.Builder> consumer)
        Creates a translatable component by applying configuration from consumer.
        Parameters:
        consumer - the builder configurator
        Returns:
        a translatable component
        Since:
        4.0.0
      • translatable

        @Contract(value="_ -> new",
                  pure=true)
        @NotNull
        static @NotNull TranslatableComponent translatable​(@NotNull
                                                           @NotNull java.lang.String key)
        Creates a translatable component with a translation key.
        Parameters:
        key - the translation key
        Returns:
        a translatable component
        Since:
        4.0.0
      • translatable

        @Contract(value="_ -> new",
                  pure=true)
        @NotNull
        static @NotNull TranslatableComponent translatable​(@NotNull
                                                           @NotNull Translatable translatable)
        Creates a translatable component with a translation key.
        Parameters:
        translatable - the translatable object to get the key from
        Returns:
        a translatable component
        Since:
        4.8.0
      • translatable

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TranslatableComponent translatable​(@NotNull
                                                           @NotNull java.lang.String key,
                                                           @NotNull
                                                           @NotNull Style style)
        Creates a translatable component with a translation key and styling.
        Parameters:
        key - the translation key
        style - the style
        Returns:
        a translatable component
        Since:
        4.0.0
      • translatable

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TranslatableComponent translatable​(@NotNull
                                                           @NotNull Translatable translatable,
                                                           @NotNull
                                                           @NotNull Style style)
        Creates a translatable component with a translation key and styling.
        Parameters:
        translatable - the translatable object to get the key from
        style - the style
        Returns:
        a translatable component
        Since:
        4.8.0
      • translatable

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TranslatableComponent translatable​(@NotNull
                                                           @NotNull java.lang.String key,
                                                           @Nullable
                                                           @Nullable TextColor color)
        Creates a translatable component with a translation key, and optional color.
        Parameters:
        key - the translation key
        color - the color
        Returns:
        a translatable component
        Since:
        4.0.0
      • translatable

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TranslatableComponent translatable​(@NotNull
                                                           @NotNull Translatable translatable,
                                                           @Nullable
                                                           @Nullable TextColor color)
        Creates a translatable component with a translation key, and optional color.
        Parameters:
        translatable - the translatable object to get the key from
        color - the color
        Returns:
        a translatable component
        Since:
        4.8.0
      • translatable

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TranslatableComponent translatable​(@NotNull
                                                           @NotNull java.lang.String key,
                                                           @Nullable
                                                           @Nullable TextColor color,
                                                           TextDecoration @NotNull ... decorations)
        Creates a translatable component with a translation key, and optional color and decorations.
        Parameters:
        key - the translation key
        color - the color
        decorations - the decorations
        Returns:
        a translatable component
        Since:
        4.0.0
      • translatable

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TranslatableComponent translatable​(@NotNull
                                                           @NotNull Translatable translatable,
                                                           @Nullable
                                                           @Nullable TextColor color,
                                                           TextDecoration @NotNull ... decorations)
        Creates a translatable component with a translation key, and optional color and decorations.
        Parameters:
        translatable - the translatable object to get the key from
        color - the color
        decorations - the decorations
        Returns:
        a translatable component
        Since:
        4.8.0
      • translatable

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TranslatableComponent translatable​(@NotNull
                                                           @NotNull java.lang.String key,
                                                           @Nullable
                                                           @Nullable TextColor color,
                                                           @NotNull
                                                           @NotNull java.util.Set<TextDecoration> decorations)
        Creates a translatable component with a translation key, and optional color and decorations.
        Parameters:
        key - the translation key
        color - the color
        decorations - the decorations
        Returns:
        a translatable component
        Since:
        4.0.0
      • translatable

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TranslatableComponent translatable​(@NotNull
                                                           @NotNull Translatable translatable,
                                                           @Nullable
                                                           @Nullable TextColor color,
                                                           @NotNull
                                                           @NotNull java.util.Set<TextDecoration> decorations)
        Creates a translatable component with a translation key, and optional color and decorations.
        Parameters:
        translatable - the translatable object to get the key from
        color - the color
        decorations - the decorations
        Returns:
        a translatable component
        Since:
        4.8.0
      • translatable

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TranslatableComponent translatable​(@NotNull
                                                           @NotNull java.lang.String key,
                                                           @NotNull
                                                           @NotNull ComponentLike @NotNull ... args)
        Creates a translatable component with a translation key and arguments.
        Parameters:
        key - the translation key
        args - the translation arguments
        Returns:
        a translatable component
        Since:
        4.0.0
      • translatable

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TranslatableComponent translatable​(@NotNull
                                                           @NotNull Translatable translatable,
                                                           @NotNull
                                                           @NotNull ComponentLike @NotNull ... args)
        Creates a translatable component with a translation key and arguments.
        Parameters:
        translatable - the translatable object to get the key from
        args - the translation arguments
        Returns:
        a translatable component
        Since:
        4.8.0
      • translatable

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TranslatableComponent translatable​(@NotNull
                                                           @NotNull java.lang.String key,
                                                           @NotNull
                                                           @NotNull Style style,
                                                           @NotNull
                                                           @NotNull ComponentLike @NotNull ... args)
        Creates a translatable component with a translation key and styling.
        Parameters:
        key - the translation key
        style - the style
        args - the translation arguments
        Returns:
        a translatable component
        Since:
        4.0.0
      • translatable

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TranslatableComponent translatable​(@NotNull
                                                           @NotNull Translatable translatable,
                                                           @NotNull
                                                           @NotNull Style style,
                                                           @NotNull
                                                           @NotNull ComponentLike @NotNull ... args)
        Creates a translatable component with a translation key and styling.
        Parameters:
        translatable - the translatable object to get the key from
        style - the style
        args - the translation arguments
        Returns:
        a translatable component
        Since:
        4.8.0
      • translatable

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TranslatableComponent translatable​(@NotNull
                                                           @NotNull java.lang.String key,
                                                           @Nullable
                                                           @Nullable TextColor color,
                                                           @NotNull
                                                           @NotNull ComponentLike @NotNull ... args)
        Creates a translatable component with a translation key, arguments, and optional color.
        Parameters:
        key - the translation key
        color - the color
        args - the translation arguments
        Returns:
        a translatable component
        Since:
        4.0.0
      • translatable

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TranslatableComponent translatable​(@NotNull
                                                           @NotNull Translatable translatable,
                                                           @Nullable
                                                           @Nullable TextColor color,
                                                           @NotNull
                                                           @NotNull ComponentLike @NotNull ... args)
        Creates a translatable component with a translation key, arguments, and optional color.
        Parameters:
        translatable - the translatable object to get the key from
        color - the color
        args - the translation arguments
        Returns:
        a translatable component
        Since:
        4.8.0
      • translatable

        @Contract(value="_, _, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TranslatableComponent translatable​(@NotNull
                                                           @NotNull java.lang.String key,
                                                           @Nullable
                                                           @Nullable TextColor color,
                                                           @NotNull
                                                           @NotNull java.util.Set<TextDecoration> decorations,
                                                           @NotNull
                                                           @NotNull ComponentLike @NotNull ... args)
        Creates a translatable component with a translation key, arguments, and optional color and decorations.
        Parameters:
        key - the translation key
        color - the color
        decorations - the decorations
        args - the translation arguments
        Returns:
        a translatable component
        Since:
        4.0.0
      • translatable

        @Contract(value="_, _, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TranslatableComponent translatable​(@NotNull
                                                           @NotNull Translatable translatable,
                                                           @Nullable
                                                           @Nullable TextColor color,
                                                           @NotNull
                                                           @NotNull java.util.Set<TextDecoration> decorations,
                                                           @NotNull
                                                           @NotNull ComponentLike @NotNull ... args)
        Creates a translatable component with a translation key, arguments, and optional color and decorations.
        Parameters:
        translatable - the translatable object to get the key from
        color - the color
        decorations - the decorations
        args - the translation arguments
        Returns:
        a translatable component
        Since:
        4.8.0
      • translatable

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TranslatableComponent translatable​(@NotNull
                                                           @NotNull java.lang.String key,
                                                           @NotNull
                                                           @NotNull java.util.List<? extends ComponentLike> args)
        Creates a translatable component with a translation key and arguments.
        Parameters:
        key - the translation key
        args - the translation arguments
        Returns:
        a translatable component
        Since:
        4.0.0
      • translatable

        @Contract(value="_, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TranslatableComponent translatable​(@NotNull
                                                           @NotNull Translatable translatable,
                                                           @NotNull
                                                           @NotNull java.util.List<? extends ComponentLike> args)
        Creates a translatable component with a translation key and arguments.
        Parameters:
        translatable - the translatable object to get the key from
        args - the translation arguments
        Returns:
        a translatable component
        Since:
        4.8.0
      • translatable

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TranslatableComponent translatable​(@NotNull
                                                           @NotNull java.lang.String key,
                                                           @NotNull
                                                           @NotNull Style style,
                                                           @NotNull
                                                           @NotNull java.util.List<? extends ComponentLike> args)
        Creates a translatable component with a translation key and styling.
        Parameters:
        key - the translation key
        style - the style
        args - the translation arguments
        Returns:
        a translatable component
        Since:
        4.0.0
      • translatable

        @Contract(value="_, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TranslatableComponent translatable​(@NotNull
                                                           @NotNull Translatable translatable,
                                                           @NotNull
                                                           @NotNull Style style,
                                                           @NotNull
                                                           @NotNull java.util.List<? extends ComponentLike> args)
        Creates a translatable component with a translation key and styling.
        Parameters:
        translatable - the translatable object to get the key from
        style - the style
        args - the translation arguments
        Returns:
        a translatable component
        Since:
        4.8.0
      • translatable

        @Contract(value="_, _, _ -> new",
                  pure=true)
        static TranslatableComponent translatable​(@NotNull
                                                  @NotNull java.lang.String key,
                                                  @Nullable
                                                  @Nullable TextColor color,
                                                  @NotNull
                                                  @NotNull java.util.List<? extends ComponentLike> args)
        Creates a translatable component with a translation key, arguments, and optional color.
        Parameters:
        key - the translation key
        color - the color
        args - the translation arguments
        Returns:
        a translatable component
        Since:
        4.0.0
      • translatable

        @Contract(value="_, _, _ -> new",
                  pure=true)
        static TranslatableComponent translatable​(@NotNull
                                                  @NotNull Translatable translatable,
                                                  @Nullable
                                                  @Nullable TextColor color,
                                                  @NotNull
                                                  @NotNull java.util.List<? extends ComponentLike> args)
        Creates a translatable component with a translation key, arguments, and optional color.
        Parameters:
        translatable - the translatable object to get the key from
        color - the color
        args - the translation arguments
        Returns:
        a translatable component
        Since:
        4.8.0
      • translatable

        @Contract(value="_, _, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TranslatableComponent translatable​(@NotNull
                                                           @NotNull java.lang.String key,
                                                           @Nullable
                                                           @Nullable TextColor color,
                                                           @NotNull
                                                           @NotNull java.util.Set<TextDecoration> decorations,
                                                           @NotNull
                                                           @NotNull java.util.List<? extends ComponentLike> args)
        Creates a translatable component with a translation key, arguments, and optional color and decorations.
        Parameters:
        key - the translation key
        color - the color
        decorations - the decorations
        args - the translation arguments
        Returns:
        a translatable component
        Since:
        4.0.0
      • translatable

        @Contract(value="_, _, _, _ -> new",
                  pure=true)
        @NotNull
        static @NotNull TranslatableComponent translatable​(@NotNull
                                                           @NotNull Translatable translatable,
                                                           @Nullable
                                                           @Nullable TextColor color,
                                                           @NotNull
                                                           @NotNull java.util.Set<TextDecoration> decorations,
                                                           @NotNull
                                                           @NotNull java.util.List<? extends ComponentLike> args)
        Creates a translatable component with a translation key, arguments, and optional color and decorations.
        Parameters:
        translatable - the translatable object to get the key from
        color - the color
        decorations - the decorations
        args - the translation arguments
        Returns:
        a translatable component
        Since:
        4.8.0
      • children

        @NotNull
        @Unmodifiable @NotNull java.util.List<Component> children()
        Gets the unmodifiable list of children.
        Returns:
        the unmodifiable list of children
        Since:
        4.0.0
      • children

        @Contract(pure=true)
        @NotNull
        @NotNull Component children​(@NotNull
                                    @NotNull java.util.List<? extends ComponentLike> children)
        Sets the list of children.

        The contents of children will be copied.

        Parameters:
        children - the children
        Returns:
        a component with the children set
        Since:
        4.0.0
      • contains

        default boolean contains​(@NotNull
                                 @NotNull Component that)
        Checks if this component contains a component.

        This method uses identity comparison when checking for contains. Use contains(Component, BiPredicate) with EQUALS if you wish to use full equality comparison.

        Parameters:
        that - the other component
        Returns:
        true if this component contains the provided component, false otherwise
        Since:
        4.0.0
      • contains

        default boolean contains​(@NotNull
                                 @NotNull Component that,
                                 @NotNull
                                 @NotNull java.util.function.BiPredicate<? super Component,​? super Component> equals)
        Checks if this component contains a component.
        Parameters:
        that - the other component
        equals - the equality tester
        Returns:
        true if this component contains the provided component, false otherwise
        Since:
        4.8.0
      • detectCycle

        @ScheduledForRemoval(inVersion="5.0.0")
        @Deprecated
        default void detectCycle​(@NotNull
                                 @NotNull Component that)
        Deprecated.
        for removal since 4.7.0, with no replacement - this method is not necessary due to the fact Components are immutable
        Prevents a cycle between this component and the provided component.
        Parameters:
        that - the other component
        Since:
        4.0.0
      • append

        @Contract(pure=true)
        @NotNull
        default @NotNull Component append​(@NotNull
                                          @NotNull Component component)
        Appends a component to this component.
        Parameters:
        component - the component to append
        Returns:
        a component with the component added
        Since:
        4.0.0
      • append

        @NotNull
        default @NotNull Component append​(@NotNull
                                          @NotNull ComponentLike like)
        Appends a component to this component.
        Parameters:
        like - the component to append
        Returns:
        a component with the component added
        Since:
        4.0.0
      • append

        @Contract(pure=true)
        @NotNull
        default @NotNull Component append​(@NotNull
                                          @NotNull ComponentBuilder<?,​?> builder)
        Appends a component to this component.
        Parameters:
        builder - the component to append
        Returns:
        a component with the component added
        Since:
        4.0.0
      • appendNewline

        @Contract(pure=true)
        @NotNull
        default @NotNull Component appendNewline()
        Appends a newline to this component.
        Returns:
        a component with the newline added
        Since:
        4.12.0
      • appendSpace

        @Contract(pure=true)
        @NotNull
        default @NotNull Component appendSpace()
        Appends a space to this component.
        Returns:
        a component with the space added
        Since:
        4.12.0
      • applyFallbackStyle

        @Contract(pure=true)
        @NotNull
        default @NotNull Component applyFallbackStyle​(@NotNull
                                                      @NotNull Style style)
        Apply a fallback style for this component and its children.

        This method can be used to set the "default" style for a component, whilst still allowing children of the component to override the style.

        Parameters:
        style - style to be used as a fallback
        Returns:
        the styled component
        Since:
        4.10.0
      • applyFallbackStyle

        @Contract(pure=true)
        @NotNull
        default @NotNull Component applyFallbackStyle​(@NotNull
                                                      @NotNull StyleBuilderApplicable @NotNull ... style)
        Apply a fallback style for this component and its children.

        This method can be used to set the "default" style for a component, whilst still allowing children of the component to override the style.

        Parameters:
        style - style to be used as a fallback
        Returns:
        the styled component
        Since:
        4.10.0
      • style

        @NotNull
        @NotNull Style style()
        Gets the style of this component.
        Returns:
        the style of this component
        Since:
        4.0.0
      • style

        @Contract(pure=true)
        @NotNull
        @NotNull Component style​(@NotNull
                                 @NotNull Style style)
        Sets the style of this component.
        Parameters:
        style - the style
        Returns:
        a component
        Since:
        4.0.0
      • style

        @Contract(pure=true)
        @NotNull
        default @NotNull Component style​(@NotNull
                                         @NotNull java.util.function.Consumer<Style.Builder> consumer)
        Sets the style of this component.
        Parameters:
        consumer - the style consumer
        Returns:
        a component
        Since:
        4.0.0
      • style

        @Contract(pure=true)
        @NotNull
        default @NotNull Component style​(@NotNull
                                         @NotNull java.util.function.Consumer<Style.Builder> consumer,
                                         @NotNull Style.Merge.Strategy strategy)
        Sets the style of this component.
        Parameters:
        consumer - the style consumer
        strategy - the merge strategy
        Returns:
        a component
        Since:
        4.0.0
      • style

        @Contract(pure=true)
        @NotNull
        default @NotNull Component style​(@NotNull Style.Builder style)
        Sets the style of this component.
        Parameters:
        style - the style
        Returns:
        a component
        Since:
        4.0.0
      • mergeStyle

        @Contract(pure=true)
        @NotNull
        default @NotNull Component mergeStyle​(@NotNull
                                              @NotNull Component that)
        Merges from another style into this component's style.
        Parameters:
        that - the other style
        Returns:
        a component
        Since:
        4.0.0
      • mergeStyle

        @Contract(pure=true)
        @NotNull
        default @NotNull Component mergeStyle​(@NotNull
                                              @NotNull Component that,
                                              @NotNull Style.Merge @NotNull ... merges)
        Merges from another style into this component's style.
        Parameters:
        that - the other style
        merges - the style parts to merge
        Returns:
        a component
        Since:
        4.0.0
      • mergeStyle

        @Contract(pure=true)
        @NotNull
        default @NotNull Component mergeStyle​(@NotNull
                                              @NotNull Component that,
                                              @NotNull
                                              @NotNull java.util.Set<Style.Merge> merges)
        Merges from another style into this component's style.
        Parameters:
        that - the other style
        merges - the style parts to merge
        Returns:
        a component
        Since:
        4.0.0
      • font

        @Nullable
        default @Nullable Key font()
        Gets the font.
        Specified by:
        font in interface StyleGetter
        Returns:
        the font of this component
        Since:
        4.10.0
      • font

        @NotNull
        default @NotNull Component font​(@Nullable
                                        @Nullable Key key)
        Sets the font.
        Specified by:
        font in interface StyleSetter<Component>
        Parameters:
        key - a font
        Returns:
        a component
        Since:
        4.10.0
      • color

        @Nullable
        default @Nullable TextColor color()
        Gets the color of this component.
        Specified by:
        color in interface StyleGetter
        Returns:
        the color of this component
        Since:
        4.0.0
      • color

        @Contract(pure=true)
        @NotNull
        default @NotNull Component color​(@Nullable
                                         @Nullable TextColor color)
        Sets the color of this component.
        Specified by:
        color in interface StyleSetter<Component>
        Parameters:
        color - the color
        Returns:
        a component
        Since:
        4.0.0
      • colorIfAbsent

        @Contract(pure=true)
        @NotNull
        default @NotNull Component colorIfAbsent​(@Nullable
                                                 @Nullable TextColor color)
        Sets the color if there isn't one set already.
        Specified by:
        colorIfAbsent in interface StyleSetter<Component>
        Parameters:
        color - the color
        Returns:
        a component
        Since:
        4.0.0
      • hasDecoration

        default boolean hasDecoration​(@NotNull
                                      @NotNull TextDecoration decoration)
        Tests if this component has a decoration.
        Specified by:
        hasDecoration in interface StyleGetter
        Parameters:
        decoration - the decoration
        Returns:
        true if this component has the decoration, false if this component does not have the decoration
        Since:
        4.0.0
      • decoration

        @Contract(pure=true)
        @NotNull
        default @NotNull Component decoration​(@NotNull
                                              @NotNull TextDecoration decoration,
                                              boolean flag)
        Sets the state of a decoration on this component.
        Specified by:
        decoration in interface StyleSetter<Component>
        Parameters:
        decoration - the decoration
        flag - true if this component should have the decoration, false if this component should not have the decoration
        Returns:
        a component
        Since:
        4.0.0
      • decorations

        @Contract(pure=true)
        @NotNull
        default @NotNull Component decorations​(@NotNull
                                               @NotNull java.util.Map<TextDecoration,​TextDecoration.State> decorations)
        Sets decorations for this component's style using the specified decorations map.

        If a given decoration does not have a value explicitly set, the value of that particular decoration is not changed.

        Specified by:
        decorations in interface StyleSetter<Component>
        Parameters:
        decorations - a set of default values
        Returns:
        a component
        Since:
        4.0.0
      • clickEvent

        @Nullable
        default @Nullable ClickEvent clickEvent()
        Gets the click event of this component.
        Specified by:
        clickEvent in interface StyleGetter
        Returns:
        the click event
        Since:
        4.0.0
      • clickEvent

        @Contract(pure=true)
        @NotNull
        default @NotNull Component clickEvent​(@Nullable
                                              @Nullable ClickEvent event)
        Sets the click event of this component.
        Specified by:
        clickEvent in interface StyleSetter<Component>
        Parameters:
        event - the click event
        Returns:
        a component
        Since:
        4.0.0
      • hoverEvent

        @Nullable
        default @Nullable HoverEvent<?> hoverEvent()
        Gets the hover event of this component.
        Specified by:
        hoverEvent in interface StyleGetter
        Returns:
        the hover event
        Since:
        4.0.0
      • hoverEvent

        @Contract(pure=true)
        @NotNull
        default @NotNull Component hoverEvent​(@Nullable
                                              @Nullable HoverEventSource<?> source)
        Sets the hover event of this component.
        Specified by:
        hoverEvent in interface StyleSetter<Component>
        Parameters:
        source - the hover event source
        Returns:
        a component
        Since:
        4.0.0
      • insertion

        @Nullable
        default @Nullable java.lang.String insertion()
        Gets the string to be inserted when this component is shift-clicked.
        Specified by:
        insertion in interface StyleGetter
        Returns:
        the insertion string
        Since:
        4.0.0
      • insertion

        @Contract(pure=true)
        @NotNull
        default @NotNull Component insertion​(@Nullable
                                             @Nullable java.lang.String insertion)
        Sets the string to be inserted when this component is shift-clicked.
        Specified by:
        insertion in interface StyleSetter<Component>
        Parameters:
        insertion - the insertion string
        Returns:
        a component
        Since:
        4.0.0
      • hasStyling

        default boolean hasStyling()
        Tests if this component has any styling.
        Returns:
        true if this component has any styling, false if this component does not have any styling
        Since:
        4.0.0
      • replaceText

        @Contract(pure=true)
        @NotNull
        default @NotNull Component replaceText​(@NotNull
                                               @NotNull java.util.function.Consumer<TextReplacementConfig.Builder> configurer)
        Finds and replaces any text with this or child Components using the configured options.
        Parameters:
        configurer - the configurer
        Returns:
        a modified copy of this component
        Since:
        4.2.0
      • replaceText

        @Contract(pure=true)
        @NotNull
        default @NotNull Component replaceText​(@NotNull
                                               @NotNull TextReplacementConfig config)
        Finds and replaces any text with this or child Components using the provided options.
        Parameters:
        config - the replacement config
        Returns:
        a modified copy of this component
        Since:
        4.2.0
      • compact

        @NotNull
        default @NotNull Component compact()
        Create a new component with any redundant style elements or children removed.
        Returns:
        the optimized component
        Since:
        4.9.0
      • iterable

        @NotNull
        default @NotNull java.lang.Iterable<Component> iterable​(@NotNull
                                                                @NotNull ComponentIteratorType type,
                                                                @NotNull
                                                                @NotNull ComponentIteratorFlag @Nullable ... flags)
        Returns an iterable view of this component.
        Parameters:
        type - the type
        flags - the flags
        Returns:
        the iterable
        Since:
        4.9.0
      • iterable

        @NotNull
        default @NotNull java.lang.Iterable<Component> iterable​(@NotNull
                                                                @NotNull ComponentIteratorType type,
                                                                @NotNull
                                                                @NotNull java.util.Set<ComponentIteratorFlag> flags)
        Returns an iterable view of this component.
        Parameters:
        type - the type
        flags - the flags
        Returns:
        the iterable
        Since:
        4.9.0
      • iterator

        @NotNull
        default @NotNull java.util.Iterator<Component> iterator​(@NotNull
                                                                @NotNull ComponentIteratorType type,
                                                                @NotNull
                                                                @NotNull ComponentIteratorFlag @Nullable ... flags)
        Returns an iterator for this component.

        As components are immutable, this iterator does not support removal.

        Parameters:
        type - the type
        flags - the flags
        Returns:
        the iterator
        Since:
        4.9.0
      • iterator

        @NotNull
        default @NotNull java.util.Iterator<Component> iterator​(@NotNull
                                                                @NotNull ComponentIteratorType type,
                                                                @NotNull
                                                                @NotNull java.util.Set<ComponentIteratorFlag> flags)
        Returns an iterator for this component.

        As components are immutable, this iterator does not support removal.

        Parameters:
        type - the type
        flags - the flags
        Returns:
        the iterator
        Since:
        4.9.0
      • spliterator

        @NotNull
        default @NotNull java.util.Spliterator<Component> spliterator​(@NotNull
                                                                      @NotNull ComponentIteratorType type,
                                                                      @NotNull
                                                                      @NotNull ComponentIteratorFlag @Nullable ... flags)
        Returns a spliterator for this component.

        The resulting spliterator has the Spliterator.IMMUTABLE, Spliterator.NONNULL and Spliterator.ORDERED characteristics.

        Parameters:
        type - the type
        flags - the flags
        Returns:
        the spliterator
        Since:
        4.9.0
      • spliterator

        @NotNull
        default @NotNull java.util.Spliterator<Component> spliterator​(@NotNull
                                                                      @NotNull ComponentIteratorType type,
                                                                      @NotNull
                                                                      @NotNull java.util.Set<ComponentIteratorFlag> flags)
        Returns a spliterator for this component.

        The resulting spliterator has the Spliterator.IMMUTABLE, Spliterator.NONNULL and Spliterator.ORDERED characteristics.

        Parameters:
        type - the type
        flags - the flags
        Returns:
        the spliterator
        Since:
        4.9.0
      • replaceText

        @ScheduledForRemoval(inVersion="5.0.0")
        @Contract(pure=true)
        @Deprecated
        @NotNull
        default @NotNull Component replaceText​(@NotNull
                                               @NotNull java.lang.String search,
                                               @Nullable
                                               @Nullable ComponentLike replacement)
        Deprecated.
        for removal since 4.2.0, use replaceText(Consumer) or replaceText(TextReplacementConfig) instead.
        Finds and replaces text within any Components using a string literal.
        Parameters:
        search - a string literal
        replacement - a ComponentLike to replace each match
        Returns:
        a modified copy of this component
        Since:
        4.0.0
      • replaceText

        @ScheduledForRemoval(inVersion="5.0.0")
        @Contract(pure=true)
        @Deprecated
        @NotNull
        default @NotNull Component replaceText​(@NotNull
                                               @NotNull java.util.regex.Pattern pattern,
                                               @NotNull
                                               @NotNull java.util.function.Function<TextComponent.Builder,​@Nullable ComponentLike> replacement)
        Deprecated.
        for removal since 4.2.0, use replaceText(Consumer) or replaceText(TextReplacementConfig) instead.
        Finds and replaces text within any TextComponents using a regex pattern.
        Parameters:
        pattern - a regex pattern
        replacement - a function to replace each match
        Returns:
        a modified copy of this component
        Since:
        4.0.0
      • replaceFirstText

        @ScheduledForRemoval(inVersion="5.0.0")
        @Contract(pure=true)
        @Deprecated
        @NotNull
        default @NotNull Component replaceFirstText​(@NotNull
                                                    @NotNull java.lang.String search,
                                                    @Nullable
                                                    @Nullable ComponentLike replacement)
        Deprecated.
        for removal since 4.2.0, use replaceText(Consumer) or replaceText(TextReplacementConfig) instead.
        Finds and replaces the first occurrence of text within any Components using a string literal.
        Parameters:
        search - a string literal
        replacement - a ComponentLike to replace the first match
        Returns:
        a modified copy of this component
        Since:
        4.0.0
      • replaceFirstText

        @ScheduledForRemoval(inVersion="5.0.0")
        @Contract(pure=true)
        @Deprecated
        @NotNull
        default @NotNull Component replaceFirstText​(@NotNull
                                                    @NotNull java.util.regex.Pattern pattern,
                                                    @NotNull
                                                    @NotNull java.util.function.Function<TextComponent.Builder,​@Nullable ComponentLike> replacement)
        Deprecated.
        for removal since 4.2.0, use replaceText(Consumer) or replaceText(TextReplacementConfig) instead.
        Finds and replaces the first occurrence of text within any TextComponents using a regex pattern.
        Parameters:
        pattern - a regex pattern
        replacement - a function to replace the first match
        Returns:
        a modified copy of this component
        Since:
        4.0.0
      • replaceText

        @ScheduledForRemoval(inVersion="5.0.0")
        @Contract(pure=true)
        @Deprecated
        @NotNull
        default @NotNull Component replaceText​(@NotNull
                                               @NotNull java.lang.String search,
                                               @Nullable
                                               @Nullable ComponentLike replacement,
                                               int numberOfReplacements)
        Deprecated.
        for removal since 4.2.0, use replaceText(Consumer) or replaceText(TextReplacementConfig) instead.
        Finds and replaces n instances of text within any TextComponents using a string literal.
        Parameters:
        search - a string literal
        replacement - a ComponentLike to replace the first match
        numberOfReplacements - the amount of matches that should be replaced
        Returns:
        a modified copy of this component
        Since:
        4.0.0
      • replaceText

        @ScheduledForRemoval(inVersion="5.0.0")
        @Contract(pure=true)
        @Deprecated
        @NotNull
        default @NotNull Component replaceText​(@NotNull
                                               @NotNull java.util.regex.Pattern pattern,
                                               @NotNull
                                               @NotNull java.util.function.Function<TextComponent.Builder,​@Nullable ComponentLike> replacement,
                                               int numberOfReplacements)
        Deprecated.
        for removal since 4.2.0, use replaceText(Consumer) or replaceText(TextReplacementConfig) instead.
        Finds and replaces n instances of text within any TextComponents using a regex pattern.
        Parameters:
        pattern - a regex pattern
        replacement - a function to replace each match
        numberOfReplacements - the amount of matches that should be replaced
        Returns:
        a modified copy of this component
        Since:
        4.0.0
      • replaceText

        @ScheduledForRemoval(inVersion="5.0.0")
        @Contract(pure=true)
        @Deprecated
        @NotNull
        default @NotNull Component replaceText​(@NotNull
                                               @NotNull java.lang.String search,
                                               @Nullable
                                               @Nullable ComponentLike replacement,
                                               @NotNull
                                               @NotNull IntFunction2<PatternReplacementResult> fn)
        Deprecated.
        for removal since 4.2.0, use replaceText(Consumer) or replaceText(TextReplacementConfig) instead.
        Finds and replaces n instances of text within any TextComponents using a string literal.

        Utilises an IntFunction2 to determine if each instance should be replaced.

        Parameters:
        search - a string literal
        replacement - a ComponentLike to replace the first match
        fn - a function of (index, replaced) used to determine if matches should be replaced, where "replaced" is the number of successful replacements
        Returns:
        a modified copy of this component
        Since:
        4.0.0
      • replaceText

        @ScheduledForRemoval(inVersion="5.0.0")
        @Contract(pure=true)
        @Deprecated
        @NotNull
        default @NotNull Component replaceText​(@NotNull
                                               @NotNull java.util.regex.Pattern pattern,
                                               @NotNull
                                               @NotNull java.util.function.Function<TextComponent.Builder,​@Nullable ComponentLike> replacement,
                                               @NotNull
                                               @NotNull IntFunction2<PatternReplacementResult> fn)
        Deprecated.
        for removal since 4.2.0, use replaceText(Consumer) or replaceText(TextReplacementConfig) instead.
        Finds and replaces text using a regex pattern.

        Utilises an IntFunction2 to determine if each instance should be replaced.

        Parameters:
        pattern - a regex pattern
        replacement - a function to replace the first match
        fn - a function of (index, replaced) used to determine if matches should be replaced, where "replaced" is the number of successful replacements
        Returns:
        a modified copy of this component
        Since:
        4.0.0
      • asHoverEvent

        @NotNull
        default @NotNull HoverEvent<Component> asHoverEvent​(@NotNull
                                                            @NotNull java.util.function.UnaryOperator<Component> op)
        Description copied from interface: HoverEventSource
        Creates a hover event with value derived from this object.

        The event value will be passed through the provided callback to allow transforming the original value of the event.

        Specified by:
        asHoverEvent in interface HoverEventSource<Component>
        Parameters:
        op - transformation on value
        Returns:
        a hover event
      • examinableProperties

        @NotNull
        default @NotNull java.util.stream.Stream<? extends net.kyori.examination.ExaminableProperty> examinableProperties()
        Specified by:
        examinableProperties in interface net.kyori.examination.Examinable