Makes both String[] and List<String> available for string formatting
All checks were successful
KnarCraft/KnarLib/pipeline/head This commit looks good
All checks were successful
KnarCraft/KnarLib/pipeline/head This commit looks good
This commit is contained in:
parent
21611dd90d
commit
7dc0315469
@ -6,6 +6,8 @@ import net.md_5.bungee.api.ChatColor;
|
||||
import org.bukkit.command.CommandSender;
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* A formatter for formatting displayed messages
|
||||
*/
|
||||
@ -169,6 +171,20 @@ public final class StringFormatter {
|
||||
*/
|
||||
public String replacePlaceholders(@NotNull TranslatableMessage translatableMessage, @NotNull String[] placeholders,
|
||||
@NotNull String[] replacements) {
|
||||
return replacePlaceholders(this.translator.getTranslatedMessage(translatableMessage), List.of(placeholders),
|
||||
List.of(replacements));
|
||||
}
|
||||
|
||||
/**
|
||||
* Replaces placeholders in a translatable message
|
||||
*
|
||||
* @param translatableMessage <p>The translatable message to replace in</p>
|
||||
* @param placeholders <p>The placeholders to replace</p>
|
||||
* @param replacements <p>The replacement values</p>
|
||||
* @return <p>The input string with placeholders replaced</p>
|
||||
*/
|
||||
public String replacePlaceholders(@NotNull TranslatableMessage translatableMessage, @NotNull List<String> placeholders,
|
||||
@NotNull List<String> replacements) {
|
||||
return replacePlaceholders(this.translator.getTranslatedMessage(translatableMessage), placeholders, replacements);
|
||||
}
|
||||
|
||||
@ -195,8 +211,21 @@ public final class StringFormatter {
|
||||
*/
|
||||
public static String replacePlaceholders(@NotNull String input, @NotNull String[] placeholders,
|
||||
@NotNull String[] replacements) {
|
||||
for (int i = 0; i < Math.min(placeholders.length, replacements.length); i++) {
|
||||
input = replacePlaceholder(input, placeholders[i], replacements[i]);
|
||||
return replacePlaceholders(input, List.of(placeholders), List.of(replacements));
|
||||
}
|
||||
|
||||
/**
|
||||
* Replaces placeholders in a string
|
||||
*
|
||||
* @param input <p>The input string to replace in</p>
|
||||
* @param placeholders <p>The placeholders to replace</p>
|
||||
* @param replacements <p>The replacement values</p>
|
||||
* @return <p>The input string with placeholders replaced</p>
|
||||
*/
|
||||
public static String replacePlaceholders(@NotNull String input, @NotNull List<String> placeholders,
|
||||
@NotNull List<String> replacements) {
|
||||
for (int i = 0; i < Math.min(placeholders.size(), replacements.size()); i++) {
|
||||
input = replacePlaceholder(input, placeholders.get(i), replacements.get(i));
|
||||
}
|
||||
return input;
|
||||
}
|
||||
|
@ -2,6 +2,7 @@ package net.knarcraft.knarlib.formatting;
|
||||
|
||||
import org.jetbrains.annotations.NotNull;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
|
||||
@ -71,8 +72,8 @@ public final class StringReplacer {
|
||||
* @return <p>The string with placeholders replaced</p>
|
||||
*/
|
||||
public @NotNull String replace(@NotNull String input) {
|
||||
return StringFormatter.replacePlaceholders(input, replacements.keySet().toArray(new String[0]),
|
||||
replacements.values().toArray(new String[0]));
|
||||
return StringFormatter.replacePlaceholders(input, new ArrayList<>(replacements.keySet()),
|
||||
new ArrayList<>(replacements.values()));
|
||||
}
|
||||
|
||||
}
|
||||
|
@ -12,7 +12,7 @@ import org.jetbrains.annotations.NotNull;
|
||||
public enum TranslatableTimeUnit implements TranslatableMessage {
|
||||
|
||||
/**
|
||||
* The format for displaying the duation of something
|
||||
* The format for displaying the duration of something
|
||||
*/
|
||||
DURATION_FORMAT,
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user