feat(build): type generated event constants

Generate EventName constants for data-slhx-on metadata and exercise them through typed event emission in techdemo.

req: codegen/006
This commit is contained in:
slhx agent
2026-05-26 00:09:07 +02:00
parent 0b6ad64d98
commit 5364135c5e
5 changed files with 45 additions and 6 deletions
+3 -3
View File
@@ -408,7 +408,7 @@ impl Resources {
continue;
}
out.push_str(&format!(
"{inner}pub const {}: &'static str = {};\n",
"{inner}pub const {}: ::slhx::EventName = ::slhx::EventName::new({});\n",
event.ident,
rust_str(&event.name)
));
@@ -1031,8 +1031,8 @@ mod tests {
assert!(generated.contains("pub mod atoms"));
assert!(generated.contains("pub const filter"));
assert!(generated.contains("pub mod events"));
assert!(generated.contains("pub const click: &'static str = \"click\""));
assert!(generated.contains("pub const keydown: &'static str = \"keydown\""));
assert!(generated.contains("pub const click: ::slhx::EventName = ::slhx::EventName::new(\"click\")"));
assert!(generated.contains("pub const keydown: ::slhx::EventName = ::slhx::EventName::new(\"keydown\")"));
assert!(generated.contains("pub const new_todo"));
assert!(generated.contains("pub mod todo"));
assert!(generated.contains("pub const ALL_IDS"));