#[non_exhaustive]pub struct MessagePatch<'a> {
pub body: Option<&'a str>,
pub body_type: Option<BodyType>,
pub reaction_changes: Option<&'a [ReactionChange<'a>]>,
pub read_at: Option<&'a UTCDate>,
pub read_disposition: Option<ReadDisposition>,
pub deleted_at: Option<&'a UTCDate>,
pub deleted_for_all: Option<bool>,
}Expand description
Patch parameters for Message/set update.
All fields are optional; absent fields (i.e. None) are not included in
the patch (the server leaves them unchanged).
Use ..Default::default() to fill in unused fields.
Fields (Non-exhaustive)§
This struct is marked as non-exhaustive
Struct { .. } syntax; cannot be matched against without a wildcard ..; and struct update syntax will not work.body: Option<&'a str>New message body text (author-only edit).
body_type: Option<BodyType>MIME type for body. Set alongside body in author-only edits.
reaction_changes: Option<&'a [ReactionChange<'a>]>Reaction changes to apply. None (default) = no reaction changes.
read_at: Option<&'a UTCDate>Set the read-receipt timestamp (Message.readAt).
read_disposition: Option<ReadDisposition>Set the read disposition recorded alongside read_at
(draft-atwood-jmap-chat-00 §Message/set update, line 1012).
Setting read_at without read_disposition causes the server to
store "displayed" (§Message line 540). Supplying both lets the
client pick Deleted or Processed explicitly, or use
Other("...") for a vendor / future disposition value. Clients
SHOULD only set this when they also set read_at.
deleted_at: Option<&'a UTCDate>Set the deletion timestamp for soft/hard delete.
deleted_for_all: Option<bool>When Some(true) and deleted_at is also set, deletes for all
participants (server sends Peer/retract).