]> nmode's Git Repositories - signal-cli/blobdiff - src/main/java/org/asamk/signal/json/JsonQuote.java
Improve addDevice error message
[signal-cli] / src / main / java / org / asamk / signal / json / JsonQuote.java
index d8d3c17fe623e73ab7dcec067eb7dcac4d927eca..514f3db9ee106fb7b5210c575eca15063aa35ff0 100644 (file)
@@ -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<JsonMention> mentions,
-        List<JsonQuotedAttachment> attachments
+        List<JsonQuotedAttachment> attachments,
+        @JsonInclude(JsonInclude.Include.NON_NULL) List<JsonTextStyle> 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<JsonQuotedAttachment>();
+                .toList() : List.<JsonQuotedAttachment>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);
     }
 }