summary refs log tree commit diff
path: root/modules/site_test/src
diff options
context:
space:
mode:
Diffstat (limited to 'modules/site_test/src')
-rw-r--r--modules/site_test/src/main.rs34
1 files changed, 12 insertions, 22 deletions
diff --git a/modules/site_test/src/main.rs b/modules/site_test/src/main.rs
index ba40ede..9201c8a 100644
--- a/modules/site_test/src/main.rs
+++ b/modules/site_test/src/main.rs
@@ -1,21 +1,15 @@
-use std::collections::HashMap;
-
 use morgana::{morx, Component, RenderNode};
 
 pub fn main() {
-    let parent = ParentLayout {
-        children: vec![
-            RenderNode::Component(
-                Box::new(Child {
-                    children: vec![
-                        RenderNode::TextNode { content: "Hello world!".to_string() }
-                    ]
-                })
-            )
-        ]
+    let parent = morx! {
+        ParentLayout {
+            Child {
+                "Hello world!"
+            }
+        }
     };
 
-    let text = morgana::render_tree_blocking(RenderNode::Component(Box::new(parent)));
+    let text = morgana::render_tree_blocking(parent);
     println!("{text}")
 }
 
@@ -24,7 +18,7 @@ struct ParentLayout {
 }
 
 impl Component for ParentLayout {
-    fn render(self: Box<Self>) -> Vec<RenderNode> {
+    fn render(self: Box<Self>) -> RenderNode {
         morx!{
             html lang = "en-US" {
                 head {
@@ -41,13 +35,9 @@ struct Child {
 }
 
 impl Component for Child {
-    fn render(self: Box<Self>) -> Vec<RenderNode> {
-        vec![
-            RenderNode::Element {
-                name: "p".to_string(),
-                attributes: HashMap::new(),
-                children: self.children
-            }
-        ]
+    fn render(self: Box<Self>) -> RenderNode {
+        morx! {
+            p= {self.children}
+        }
     }
 }