Files
metabuilder/packages/ui_level4/seed/scripts/schemas.lua
T
git f3b1058d62 feat(ui): Add UI components for header, intro, and user dashboard
- Implemented App Header with lifecycle and rendering scripts.
- Created Intro Section with rendering logic.
- Developed User Dashboard with profile, comments, and chat functionalities.
- Added Admin Panel for user and content management.
- Introduced Application Builder with schemas and workflows.
- Established Super God panel for tenant management.
- Updated metadata and tests for all new components and functionalities.
- Enhanced UI Pages Bundle to include dependencies for all levels.
- Improved permission checks and constants in the permissions package.
2025-12-29 23:31:43 +00:00

39 lines
1.1 KiB
Lua

local M = {}
function M.render(ctx)
local items = {}
for _, s in ipairs(ctx.schemas or {}) do
items[#items + 1] = {
type = "Card",
children = {
{ type = "CardHeader", children = { { type = "CardTitle", props = { text = s.name } } } },
{ type = "CardContent", children = {
{ type = "Typography", props = { text = s.description or "No description" } },
{ type = "Badge", props = { text = #(s.fields or {}) .. " fields" } }
}},
{ type = "CardFooter", children = {
{ type = "Button", props = { text = "Edit", onClick = "editSchema", data = s.id } }
}}
}
}
end
return {
type = "Stack",
props = { spacing = 4 },
children = {
{ type = "Button", props = { text = "Add Schema", onClick = "addSchema" } },
{ type = "Grid", props = { cols = 2, gap = 4 }, children = items }
}
}
end
function M.addSchema()
return { success = true, action = "open_schema_dialog" }
end
function M.editSchema(ctx)
return { success = true, action = "open_schema_dialog", id = ctx.schemaId }
end
return M