add an html interpreter
This commit is contained in:
61
examples/lang/sample.masonry
Normal file
61
examples/lang/sample.masonry
Normal file
@ -0,0 +1,61 @@
|
||||
// Sample Masonry application demonstrating the language features
|
||||
entity User {
|
||||
name: string required
|
||||
email: string required unique
|
||||
age: number
|
||||
role: string default "user"
|
||||
password: string required
|
||||
}
|
||||
|
||||
page UserDashboard at "/dashboard" layout main title "User Dashboard" {
|
||||
meta description "User management dashboard"
|
||||
meta keywords "user, dashboard, management"
|
||||
|
||||
section header type container class "header" {
|
||||
component nav {
|
||||
field logo type text value "MyApp"
|
||||
button profile label "Profile"
|
||||
button logout label "Logout"
|
||||
}
|
||||
}
|
||||
|
||||
section content type tab {
|
||||
section users label "Users" active {
|
||||
component table for User {
|
||||
field name type text label "Full Name" sortable searchable
|
||||
field email type email label "Email Address" sortable
|
||||
field role type select options ["admin", "user", "moderator"]
|
||||
button edit label "Edit"
|
||||
button delete label "Delete"
|
||||
}
|
||||
}
|
||||
|
||||
section settings label "Settings" {
|
||||
component form for User {
|
||||
field name type text label "Full Name" required placeholder "Enter your name"
|
||||
field email type email label "Email" required placeholder "Enter your email"
|
||||
field age type number label "Age" placeholder "Enter your age"
|
||||
field role type select label "Role" options ["admin", "user", "moderator"] default "user"
|
||||
field password type password label "Password" required
|
||||
|
||||
when role equals "admin" {
|
||||
field permissions type select label "Admin Permissions" options ["read", "write", "delete"]
|
||||
}
|
||||
|
||||
button save label "Save Changes"
|
||||
button cancel label "Cancel"
|
||||
}
|
||||
}
|
||||
|
||||
section profile label "Profile" {
|
||||
component form {
|
||||
field avatar type file label "Profile Picture" accept ".jpg,.png"
|
||||
field bio type textarea label "Biography" rows 4 placeholder "Tell us about yourself"
|
||||
field theme type select label "Theme" options ["light", "dark"] default "light"
|
||||
field notifications type checkbox label "Enable Notifications" default "true"
|
||||
|
||||
button update label "Update Profile"
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user