From 7120842f9d2c659a2f12d8922299c2a761bc5582 Mon Sep 17 00:00:00 2001 From: mat <27899617+mat-1@users.noreply.github.com> Date: Sun, 10 Aug 2025 18:55:23 -0500 Subject: Send correct data component checksums (#234) * start implementing data component crc32 hashes * start doing serde impls for checksums * make more components hashable * make all data components serializable * support recursive components * fix simdnbt dep * update changelog * clippy --- azalea-chat/src/base_component.rs | 12 ++- azalea-chat/src/click_event.rs | 16 ++++ azalea-chat/src/component.rs | 6 +- azalea-chat/src/hover_event.rs | 20 +++++ azalea-chat/src/lib.rs | 2 + azalea-chat/src/style.rs | 132 ++++++++++++++++++++++-------- azalea-chat/src/text_component.rs | 18 ++-- azalea-chat/src/translatable_component.rs | 10 +-- 8 files changed, 166 insertions(+), 50 deletions(-) create mode 100644 azalea-chat/src/click_event.rs create mode 100644 azalea-chat/src/hover_event.rs (limited to 'azalea-chat/src') diff --git a/azalea-chat/src/base_component.rs b/azalea-chat/src/base_component.rs index cbc5ae8b..366904c7 100644 --- a/azalea-chat/src/base_component.rs +++ b/azalea-chat/src/base_component.rs @@ -2,20 +2,26 @@ use serde::Serialize; use crate::{FormattedText, style::Style}; -#[derive(Clone, Debug, PartialEq, Serialize, Eq, Hash)] +#[derive(Clone, Debug, PartialEq, Serialize)] pub struct BaseComponent { // implements mutablecomponent #[serde(skip_serializing_if = "Vec::is_empty")] pub siblings: Vec, #[serde(flatten)] - pub style: Style, + pub style: Box