config: ui,packages,json (2 files)

This commit is contained in:
Richard Ward
2025-12-31 00:03:39 +00:00
parent e28d806ebc
commit 131c5e991c
2 changed files with 314 additions and 4 deletions

View File

@@ -1,4 +1,313 @@
[
{
"id": "landing_nav",
"type": "Box",
"props": {
"component": "nav",
"className": "landing-nav",
"sx": {
"borderBottom": 1,
"borderColor": "divider",
"bgcolor": "rgba(var(--color-card-rgb), 0.5)",
"backdropFilter": "blur(8px)",
"position": "sticky",
"top": 0,
"zIndex": 50
}
},
"children": [
{
"id": "landing_nav_container",
"type": "Container",
"props": {
"maxWidth": "lg",
"className": "landing-nav-container"
},
"children": [
{
"id": "landing_nav_content",
"type": "Stack",
"props": {
"direction": "row",
"justifyContent": "space-between",
"alignItems": "center",
"className": "landing-nav-content",
"sx": {
"height": 64
}
},
"children": [
{
"id": "landing_nav_brand",
"type": "Stack",
"props": {
"direction": "row",
"alignItems": "center",
"spacing": 1.5,
"className": "landing-nav-brand"
},
"children": [
{
"id": "landing_nav_logo_box",
"type": "Box",
"props": {
"className": "landing-nav-logo",
"sx": {
"width": 32,
"height": 32,
"borderRadius": 2,
"background": "linear-gradient(135deg, var(--color-primary) 0%, var(--color-accent) 100%)"
}
},
"children": []
},
{
"id": "landing_nav_brand_text",
"type": "Text",
"props": {
"variant": "h6",
"children": "MetaBuilder",
"sx": {
"fontWeight": 700,
"fontSize": "1.25rem"
}
},
"children": []
}
]
},
{
"id": "landing_nav_links_desktop",
"type": "Stack",
"props": {
"direction": "row",
"alignItems": "center",
"spacing": 2,
"className": "landing-nav-links",
"sx": {
"display": { "xs": "none", "md": "flex" }
}
},
"children": [
{
"id": "landing_nav_link_features",
"type": "Link",
"props": {
"href": "#features",
"children": "Features",
"className": "nav-link",
"sx": {
"color": "text.secondary",
"fontSize": "0.875rem",
"textDecoration": "none",
"transition": "color 0.2s",
"&:hover": {
"color": "text.primary"
}
}
},
"children": []
},
{
"id": "landing_nav_link_about",
"type": "Link",
"props": {
"href": "#about",
"children": "About",
"className": "nav-link",
"sx": {
"color": "text.secondary",
"fontSize": "0.875rem",
"textDecoration": "none",
"transition": "color 0.2s",
"&:hover": {
"color": "text.primary"
}
}
},
"children": []
},
{
"id": "landing_nav_link_contact",
"type": "Link",
"props": {
"href": "#contact",
"children": "Contact",
"className": "nav-link",
"sx": {
"color": "text.secondary",
"fontSize": "0.875rem",
"textDecoration": "none",
"transition": "color 0.2s",
"&:hover": {
"color": "text.primary"
}
}
},
"children": []
},
{
"id": "landing_nav_signin_btn",
"type": "Button",
"props": {
"variant": "outlined",
"size": "small",
"children": "Sign In",
"onClick": "{{onNavigate(2)}}",
"startIcon": { "$ref": "icon_user" },
"sx": {
"ml": 1
}
},
"children": []
},
{
"id": "landing_nav_admin_btn",
"type": "Button",
"props": {
"variant": "contained",
"size": "small",
"children": "Admin",
"onClick": "{{onNavigate(4)}}",
"startIcon": { "$ref": "icon_shield" }
},
"children": []
}
]
},
{
"id": "landing_nav_mobile_toggle",
"type": "IconButton",
"props": {
"aria-label": "Toggle menu",
"onClick": "{{toggleMenu}}",
"className": "landing-nav-mobile-toggle",
"sx": {
"display": { "xs": "flex", "md": "none" },
"p": 1,
"borderRadius": 2
}
},
"children": [
{
"id": "landing_nav_mobile_icon",
"type": "Icon",
"props": {
"name": "{{menuOpen ? 'Close' : 'Menu'}}",
"size": 24
},
"children": []
}
]
}
]
}
]
},
{
"id": "landing_nav_mobile_menu",
"type": "Box",
"props": {
"className": "landing-nav-mobile-menu",
"data-show-when": "menuOpen",
"sx": {
"display": { "xs": "block", "md": "none" },
"borderTop": 1,
"borderColor": "divider",
"bgcolor": "background.paper",
"px": 2,
"py": 2
}
},
"children": [
{
"id": "landing_nav_mobile_links",
"type": "Stack",
"props": {
"spacing": 2,
"className": "landing-nav-mobile-links"
},
"children": [
{
"id": "landing_nav_mobile_link_features",
"type": "Link",
"props": {
"href": "#features",
"children": "Features",
"sx": {
"display": "block",
"color": "text.secondary",
"fontSize": "0.875rem",
"textDecoration": "none",
"&:hover": { "color": "text.primary" }
}
},
"children": []
},
{
"id": "landing_nav_mobile_link_about",
"type": "Link",
"props": {
"href": "#about",
"children": "About",
"sx": {
"display": "block",
"color": "text.secondary",
"fontSize": "0.875rem",
"textDecoration": "none",
"&:hover": { "color": "text.primary" }
}
},
"children": []
},
{
"id": "landing_nav_mobile_link_contact",
"type": "Link",
"props": {
"href": "#contact",
"children": "Contact",
"sx": {
"display": "block",
"color": "text.secondary",
"fontSize": "0.875rem",
"textDecoration": "none",
"&:hover": { "color": "text.primary" }
}
},
"children": []
},
{
"id": "landing_nav_mobile_signin_btn",
"type": "Button",
"props": {
"variant": "outlined",
"fullWidth": true,
"size": "small",
"children": "Sign In",
"onClick": "{{onNavigate(2)}}",
"startIcon": { "$ref": "icon_user" }
},
"children": []
},
{
"id": "landing_nav_mobile_admin_btn",
"type": "Button",
"props": {
"variant": "contained",
"fullWidth": true,
"size": "small",
"children": "Admin",
"onClick": "{{onNavigate(4)}}",
"startIcon": { "$ref": "icon_shield" }
},
"children": []
}
]
}
]
}
]
},
{
"id": "app_header",
"type": "AppBar",

View File

@@ -2,7 +2,7 @@
"packageId": "ui_header",
"name": "App Header",
"version": "1.0.0",
"description": "Shared navigation header with user avatar and actions",
"description": "Shared navigation header with user avatar, actions, and landing page nav variant",
"icon": "static_content/icon.svg",
"author": "MetaBuilder",
"category": "ui",
@@ -14,7 +14,8 @@
],
"exports": {
"components": [
"AppHeader"
"app_header",
"landing_nav"
],
"scripts": [
"header"
@@ -31,7 +32,7 @@
"tests/components.cases.json"
]
},
"minLevel": 2,
"minLevel": 1,
"primary": false,
"permissions": {
"header.user.menu": {
@@ -39,7 +40,7 @@
"description": "Access user menu"
},
"header.view": {
"minLevel": 2,
"minLevel": 1,
"description": "View application header"
}
}