diff --git a/compiler/semantic/src/dsl_schema.rs b/compiler/semantic/src/dsl_schema.rs index 8bebb8f6..b912d27c 100644 --- a/compiler/semantic/src/dsl_schema.rs +++ b/compiler/semantic/src/dsl_schema.rs @@ -33,9 +33,7 @@ impl DSLSchema { } } -pub fn build_dsl_registry() -> HashMap { - let mut reg = HashMap::new(); - +fn register_web_schemas(reg: &mut HashMap) { // Web module schemas ────────────────────────────────────────────── reg.insert( "website".to_string(), @@ -298,7 +296,9 @@ pub fn build_dsl_registry() -> HashMap { vec![], ), ); +} +fn register_canvas_schemas(reg: &mut HashMap) { // Canvas module schemas ────────────────────────────────────────── reg.insert( "logo".to_string(), @@ -485,7 +485,9 @@ pub fn build_dsl_registry() -> HashMap { vec![], ), ); +} +fn register_generic_schemas(reg: &mut HashMap) { // Generic DSL blocks ──────────────────────────────────────────── reg.insert( "window".to_string(), @@ -530,6 +532,12 @@ pub fn build_dsl_registry() -> HashMap { vec!["link".into(), "button".into()], ), ); +} +pub fn build_dsl_registry() -> HashMap { + let mut reg = HashMap::new(); + register_web_schemas(&mut reg); + register_canvas_schemas(&mut reg); + register_generic_schemas(&mut reg); reg }