static Component formatTrackPath(Collection<String> groups, String highlightedFirst, String highlightedSecond, boolean reversed) {
        if (groups.isEmpty()) {
            return translatable("luckperms.command.track.path.empty", GOLD); // "&6None"
        }

        TextComponent.Builder builder = text().color(DARK_AQUA);

        boolean first = true;
        boolean highlight = false;

        for (String group : groups) {
            if (first) {
                first = false;
            } else {
                builder.append(text(reversed ? " <--- " : " ---> ", highlight ? DARK_RED : GRAY));
            }

            if (group.equalsIgnoreCase(highlightedFirst)) {
                builder.append(text(group, AQUA));
                highlight = true;
            } else if (group.equalsIgnoreCase(highlightedSecond)) {
                builder.append(text(group, AQUA));
                highlight = false;
            } else {
                builder.append(text(group));
            }
        }

        return builder.build();
    }
A collection of formatted messages used by the plugin.
common/src/main/java/me/lucko/luckperms/common/locale/Message.java