feat(wasm): validate client event and state ABI

req: client_local/005\nreq: client_local/006\nreq: client_local/007\nreq: client_local/008\nreq: client_local/009\nreq: client_local/010\nreq: client_local/014
This commit is contained in:
slhx agent
2026-07-13 12:42:31 +02:00
parent 40643e360d
commit 38eae79a2f
9 changed files with 246 additions and 24 deletions
+8 -2
View File
@@ -2,6 +2,12 @@
pub mod ui {}
#[hemx::handler(client)]
pub fn increment() -> impl hemx::IntoEffect {
ui::client_local::counter_panel.text("updated by Rust/WASM")
pub fn increment(
event: hemx::wasm::ClientEvent,
state: hemx::wasm::ClientState,
) -> impl hemx::IntoEffect {
ui::client_local::counter_panel.text(format!(
"updated by Rust/WASM ({}, {})",
event.kind, state.encoded
))
}
@@ -1,4 +1,4 @@
<main data-hemx-root="client_local">
<main data-hemx-root="client_local" data-hemx-st="count=3" data-hemx-client-state-version="1">
<section data-hemx-slot="counter_panel">idle</section>
<button type="button" data-hemx-handle="increment" data-hemx-client="increment">Increment locally</button>
<button type="button" data-hemx-handle="increment" data-hemx-on="click" data-hemx-client="increment" data-hemx-client-fallback data-hemx-pending-class="is-pending">Increment locally</button>
</main>