X-Git-Url: https://git.nmode.ca/signal-cli/blobdiff_plain/8867a7b9eeb3353d059613544899b262f4f47579..19b15e68e4ec652e23f9625662b7c0f96b963029:/src/main/java/org/asamk/signal/json/JsonQuote.java diff --git a/src/main/java/org/asamk/signal/json/JsonQuote.java b/src/main/java/org/asamk/signal/json/JsonQuote.java index d8d3c17f..514f3db9 100644 --- a/src/main/java/org/asamk/signal/json/JsonQuote.java +++ b/src/main/java/org/asamk/signal/json/JsonQuote.java @@ -4,10 +4,8 @@ import com.fasterxml.jackson.annotation.JsonInclude; import org.asamk.signal.manager.api.MessageEnvelope; -import java.util.ArrayList; import java.util.List; import java.util.UUID; -import java.util.stream.Collectors; public record JsonQuote( long id, @@ -16,7 +14,8 @@ public record JsonQuote( String authorUuid, String text, @JsonInclude(JsonInclude.Include.NON_NULL) List mentions, - List attachments + List attachments, + @JsonInclude(JsonInclude.Include.NON_NULL) List textStyles ) { static JsonQuote from(MessageEnvelope.Data.Quote quote) { @@ -27,16 +26,20 @@ public record JsonQuote( final var authorUuid = address.uuid().map(UUID::toString).orElse(null); final var text = quote.text().orElse(null); - final var mentions = quote.mentions().size() > 0 ? quote.mentions() - .stream() - .map(JsonMention::from) - .collect(Collectors.toList()) : null; + final var mentions = !quote.mentions().isEmpty() + ? quote.mentions().stream().map(JsonMention::from).toList() + : null; - final var attachments = quote.attachments().size() > 0 ? quote.attachments() + final var attachments = !quote.attachments().isEmpty() ? quote.attachments() .stream() .map(JsonQuotedAttachment::from) - .collect(Collectors.toList()) : new ArrayList(); + .toList() : List.of(); + + final var textStyles = !quote.textStyles().isEmpty() ? quote.textStyles() + .stream() + .map(JsonTextStyle::from) + .toList() : null; - return new JsonQuote(id, author, authorNumber, authorUuid, text, mentions, attachments); + return new JsonQuote(id, author, authorNumber, authorUuid, text, mentions, attachments, textStyles); } }