Package net.kyori.adventure.text
Interface ComponentBuilder<C extends BuildableComponent<C,B>,B extends ComponentBuilder<C,B>>
- Type Parameters:
C- the component typeB- the builder type
- All Superinterfaces:
Buildable.Builder<C>,ComponentBuilderApplicable,ComponentLike
- All Known Subinterfaces:
BlockNBTComponent.Builder,EntityNBTComponent.Builder,KeybindComponent.Builder,NBTComponentBuilder<C,B>,ScoreComponent.Builder,SelectorComponent.Builder,StorageNBTComponent.Builder,TextComponent.Builder,TranslatableComponent.Builder
public interface ComponentBuilder<C extends BuildableComponent<C,B>,B extends ComponentBuilder<C,B>> extends Buildable.Builder<C>, ComponentBuilderApplicable, ComponentLike
A component builder.
- Since:
- 4.0.0
-
Method Summary
Modifier and Type Method Description Bappend(@NotNull Iterable<? extends ComponentLike> components)Appends components to this component.Bappend(@NotNull Component component)Appends a component to this component.Bappend(@NotNull Component @NotNull ... components)Appends components to this component.default Bappend(@NotNull ComponentBuilder<?,?> builder)Appends a component to this component.default Bappend(@NotNull ComponentLike component)Appends a component to this component.Bappend(@NotNull ComponentLike @NotNull ... components)Appends components to this component.default BapplicableApply(@NotNull ComponentBuilderApplicable applicable)Appliesapplicable.default Bapply(@NotNull Consumer<? super ComponentBuilder<?,?>> consumer)Applies an action to this builder.BapplyDeep(@NotNull Consumer<? super ComponentBuilder<?,?>> action)Applies an action to this component and all child components if they are an instance ofBuildableComponent.default @NotNull ComponentasComponent()Gets aComponentrepresentation.Cbuild()Build a component.@NotNull List<Component>children()Get an unmodifiable list containing all children currently in this builder.BclickEvent(@Nullable ClickEvent event)Sets the click event of this component.Bcolor(@Nullable TextColor color)Sets the color of this component.BcolorIfAbsent(@Nullable TextColor color)Sets the color of this component if there isn't one set already.default voidcomponentBuilderApply(@NotNull ComponentBuilder<?,?> component)Applies tocomponent.default Bdecorate(@NotNull TextDecoration decoration)Sets the state ofdecorationtoTextDecoration.State.TRUE.default Bdecorate(@NotNull TextDecoration @NotNull ... decorations)SetsdecorationstoTextDecoration.State.TRUE.default Bdecoration(@NotNull TextDecoration decoration, boolean flag)Sets the state of a decoration on this component.Bdecoration(@NotNull TextDecoration decoration, @NotNull TextDecoration.State state)Sets the value of a decoration on this component.default Bdecorations(@NotNull Set<TextDecoration> decorations, boolean flag)Sets the state of a set of decorations toflagon this component.Bfont(@Nullable net.kyori.adventure.key.Key font)Sets the font of this component.BhoverEvent(@Nullable HoverEventSource<?> source)Sets the hover event of this component.Binsertion(@Nullable String insertion)Sets the string to be inserted when this component is shift-clicked.BmapChildren(@NotNull Function<BuildableComponent<?,?>,? extends BuildableComponent<?,?>> function)Replaces each child of this component with the resultant component from the function.BmapChildrenDeep(@NotNull Function<BuildableComponent<?,?>,? extends BuildableComponent<?,?>> function)Replaces each child and sub-child of this component with the resultant component of the function.default BmergeStyle(@NotNull Component that)Merges styling from another component into this component.BmergeStyle(@NotNull Component that, @NotNull Set<Style.Merge> merges)Merges styling from another component into this component.default BmergeStyle(@NotNull Component that, @NotNull Style.Merge @NotNull ... merges)Merges styling from another component into this component.BresetStyle()Resets all styling on this component.Bstyle(@NotNull Consumer<Style.Builder> consumer)Configures the style.Bstyle(@NotNull Style style)Sets the style.
-
Method Details
-
append
Appends a component to this component.- Parameters:
component- the component to append- Returns:
- this builder
- Since:
- 4.0.0
-
append
Appends a component to this component.- Parameters:
component- the component to append- Returns:
- this builder
- Since:
- 4.0.0
-
append
Appends a component to this component.- Parameters:
builder- the component to append- Returns:
- this builder
- Since:
- 4.0.0
-
append
Appends components to this component.- Parameters:
components- the components to append- Returns:
- this builder
- Since:
- 4.0.0
-
append
Appends components to this component.- Parameters:
components- the components to append- Returns:
- this builder
- Since:
- 4.0.0
-
append
@Contract("_ -> this") @NotNull B append(@NotNull @NotNull Iterable<? extends ComponentLike> components)Appends components to this component.- Parameters:
components- the components to append- Returns:
- this builder
- Since:
- 4.0.0
-
apply
@Contract("_ -> this") @NotNull default B apply(@NotNull @NotNull Consumer<? super ComponentBuilder<?,?>> consumer)Applies an action to this builder.- Parameters:
consumer- the action- Returns:
- this builder
- Since:
- 4.0.0
-
applyDeep
@Contract("_ -> this") @NotNull B applyDeep(@NotNull @NotNull Consumer<? super ComponentBuilder<?,?>> action)Applies an action to this component and all child components if they are an instance ofBuildableComponent.- Parameters:
action- the action- Returns:
- this builder
- Since:
- 4.0.0
-
mapChildren
@Contract("_ -> this") @NotNull B mapChildren(@NotNull @NotNull Function<BuildableComponent<?,?>,? extends BuildableComponent<?,?>> function)Replaces each child of this component with the resultant component from the function.- Parameters:
function- the mapping function- Returns:
- this builder
- Since:
- 4.0.0
-
mapChildrenDeep
@Contract("_ -> this") @NotNull B mapChildrenDeep(@NotNull @NotNull Function<BuildableComponent<?,?>,? extends BuildableComponent<?,?>> function)Replaces each child and sub-child of this component with the resultant component of the function.- Parameters:
function- the mapping function- Returns:
- this builder
- Since:
- 4.0.0
-
children
Get an unmodifiable list containing all children currently in this builder.- Returns:
- the list of children
- Since:
- 4.6.0
-
style
Sets the style.- Parameters:
style- the style- Returns:
- this builder
- Since:
- 4.0.0
-
style
Configures the style.- Parameters:
consumer- the style consumer- Returns:
- this builder
- Since:
- 4.0.0
-
font
Sets the font of this component.- Parameters:
font- the font- Returns:
- this builder
- Since:
- 4.0.0
-
color
Sets the color of this component.- Parameters:
color- the color- Returns:
- this builder
- Since:
- 4.0.0
-
colorIfAbsent
Sets the color of this component if there isn't one set already.- Parameters:
color- the color- Returns:
- this builder
- Since:
- 4.0.0
-
decorations
@Contract("_, _ -> this") @NotNull default B decorations(@NotNull @NotNull Set<TextDecoration> decorations, boolean flag)Sets the state of a set of decorations toflagon this component.- Parameters:
decorations- the decorationsflag-trueif this component should have the decorations,falseif this component should not have the decorations- Returns:
- this builder
- Since:
- 4.0.0
-
decorate
Sets the state ofdecorationtoTextDecoration.State.TRUE.- Parameters:
decoration- the decoration- Returns:
- this builder
- Since:
- 4.0.0
-
decorate
@Contract("_ -> this") @NotNull default B decorate(@NotNull @NotNull TextDecoration @NotNull ... decorations)SetsdecorationstoTextDecoration.State.TRUE.- Parameters:
decorations- the decorations- Returns:
- this builder
- Since:
- 4.0.0
-
decoration
@Contract("_, _ -> this") @NotNull default B decoration(@NotNull @NotNull TextDecoration decoration, boolean flag)Sets the state of a decoration on this component.- Parameters:
decoration- the decorationflag-trueif this component should have the decoration,falseif this component should not have the decoration- Returns:
- this builder
- Since:
- 4.0.0
-
decoration
@Contract("_, _ -> this") @NotNull B decoration(@NotNull @NotNull TextDecoration decoration, @NotNull TextDecoration.State state)Sets the value of a decoration on this component.- Parameters:
decoration- the decorationstate-TextDecoration.State.TRUEif this component should have the decoration,TextDecoration.State.FALSEif this component should not have the decoration, andTextDecoration.State.NOT_SETif the decoration should not have a set value- Returns:
- this builder
- Since:
- 4.0.0
-
clickEvent
Sets the click event of this component.- Parameters:
event- the click event- Returns:
- this builder
- Since:
- 4.0.0
-
hoverEvent
Sets the hover event of this component.- Parameters:
source- the hover event source- Returns:
- this builder
- Since:
- 4.0.0
-
insertion
Sets the string to be inserted when this component is shift-clicked.- Parameters:
insertion- the insertion string- Returns:
- this builder
- Since:
- 4.0.0
-
mergeStyle
Merges styling from another component into this component.- Parameters:
that- the other component- Returns:
- this builder
- Since:
- 4.0.0
-
mergeStyle
@Contract("_, _ -> this") @NotNull default B mergeStyle(@NotNull @NotNull Component that, @NotNull Style.Merge @NotNull ... merges)Merges styling from another component into this component.- Parameters:
that- the other componentmerges- the parts to merge- Returns:
- this builder
- Since:
- 4.0.0
-
mergeStyle
@Contract("_, _ -> this") @NotNull B mergeStyle(@NotNull @NotNull Component that, @NotNull @NotNull Set<Style.Merge> merges)Merges styling from another component into this component.- Parameters:
that- the other componentmerges- the parts to merge- Returns:
- this builder
- Since:
- 4.0.0
-
resetStyle
Resets all styling on this component.- Returns:
- this builder
- Since:
- 4.0.0
-
build
Build a component.- Specified by:
buildin interfaceBuildable.Builder<C extends BuildableComponent<C,B>>- Returns:
- the component
-
applicableApply
@Contract("_ -> this") @NotNull default B applicableApply(@NotNull @NotNull ComponentBuilderApplicable applicable)Appliesapplicable.- Parameters:
applicable- the thing to apply- Returns:
- this builder
- Since:
- 4.0.0
-
componentBuilderApply
Description copied from interface:ComponentBuilderApplicableApplies tocomponent.- Specified by:
componentBuilderApplyin interfaceComponentBuilderApplicable- Parameters:
component- the component builder
-
asComponent
Description copied from interface:ComponentLikeGets aComponentrepresentation.- Specified by:
asComponentin interfaceComponentLike- Returns:
- a component
-