lib

Core libraries for Radroots
git clone https://radroots.dev/git/lib.git
Log | Files | Refs | README

commit f55b6d65023e475bf71faee8b7261965d7c5dee9
parent bba373365eadd4cbc4ef1e509f84200b00f5393d
Author: triesap <tyson@radroots.org>
Date:   Wed, 24 Jun 2026 08:51:45 +0000

types: render bindings from dto registry

- replace the types binding model dependency with dto registry roots
- describe generic result envelopes with explicit DTO descriptors
- route the types package through xtask DTO registry rendering
- verify cargo, xtask generation, and package TypeScript checks

Diffstat:
Mtools/sdk_xtask_import/src/dto_roots.rs | 14++++++++++++++
Mtools/sdk_xtask_import/src/output.rs | 2+-
2 files changed, 15 insertions(+), 1 deletion(-)

diff --git a/tools/sdk_xtask_import/src/dto_roots.rs b/tools/sdk_xtask_import/src/dto_roots.rs @@ -49,6 +49,10 @@ pub const DTO_PACKAGE_ROOTS: &[DtoPackageRootSet] = &[ package_key: "trade", roots: trade_roots, }, + DtoPackageRootSet { + package_key: "types", + roots: types_roots, + }, ]; pub const MANUAL_DESCRIPTOR_FAMILIES: &[ManualDescriptorFamily] = &[ @@ -170,6 +174,11 @@ pub fn trade_types_module() -> Result<DtoTypesModule, String> { ) } +pub fn types_types_module() -> Result<DtoTypesModule, String> { + let root_set = package_root_set("types").ok_or_else(|| "missing types DTO roots".to_owned())?; + render_registry_types(&root_set.registry(), &DtoRegistryRenderOptions::default()) +} + fn core_roots() -> Vec<RootDescriptor> { radroots_core::dto::dto_roots().into_iter().collect() } @@ -188,6 +197,10 @@ fn trade_roots() -> Vec<RootDescriptor> { radroots_trade_bindings::dto_roots() } +fn types_roots() -> Vec<RootDescriptor> { + radroots_types_bindings::dto_roots() +} + fn core_import_options( registry: &Registry, mut options: DtoRegistryRenderOptions, @@ -484,6 +497,7 @@ mod tests { assert!(package_root_set("events").is_some()); assert!(package_root_set("events_indexed").is_some()); assert!(package_root_set("trade").is_some()); + assert!(package_root_set("types").is_some()); } #[test] diff --git a/tools/sdk_xtask_import/src/output.rs b/tools/sdk_xtask_import/src/output.rs @@ -130,7 +130,7 @@ pub fn package_outputs() -> Result<Vec<PackageOutput>, String> { }, PackageOutput { spec: spec_by_key("types"), - types_ts: Some(TsSource::Module(radroots_types_bindings::types_module())), + types_ts: Some(TsSource::DtoRegistry(dto_roots::types_types_module()?)), types_imports_ts: None, constants_ts: None, kinds_ts: None,