open-standards/joule-ui/joule-ui-rs/crates/joule-ui-catalogue/Cargo.toml
Transaction Science dd970f3407 The catalogue's check reads every keyword, and wai's manifests name no format
joule-ui-catalogue now holds the node form both ways: the reading of a node and the
catalogue writer. joule-ui-a2ui keeps its names on that reading, so wai-app depends on
the neutral crate and neither format's name is left under wai/, in a manifest or a
lock file. A test holds the two lock files and the manifest to that.

check_catalogue compares the document with what the registry writes, every keyword of
it, and reads it as a schema: on each node it builds, the catalogue and the reading
must agree. That includes a node with no props for a widget that requires some, a key
folding onto a slot of an open widget, and every child a widget does not admit.

Co-Authored-By: Claude Opus 5.5 <[email protected]>
2026-11-07 03:08:05 -05:00

13 lines
523 B
TOML

[package]
name = "joule-ui-catalogue"
version.workspace = true
edition.workspace = true
license.workspace = true
repository.workspace = true
authors.workspace = true
description = "joule-ui's node form, both ways: a JSON tree of `{component, props, children}` read into a validated Widget tree, and any Registry written as a JSON Schema of those nodes, with a check that the two agree."
[dependencies]
joule-ui-core = { path = "../joule-ui-core" }
serde_json = { workspace = true }
thiserror = { workspace = true }