mirror of
https://github.com/johndoe6345789/metabuilder.git
synced 2026-04-25 14:25:02 +00:00
Icons (12 new): - AccountTree, AdminPanelSettings, ManageAccounts (admin) - Backup, Restore, Storage (storage) - Domain, SecurityUpdate, VerifiedUser, VpnKey (security) - Policy, Help (utility) Tests: - media_center: helpers.test.lua + helpers.cases.json - TV, Radio, Retro, Document helper test coverage Packages: - github_tools: new package scaffold with seed data
168 lines
4.0 KiB
JSON
168 lines
4.0 KiB
JSON
[
|
|
{
|
|
"id": "github_viewer",
|
|
"name": "GitHubViewer",
|
|
"type": "github_viewer",
|
|
"description": "Main GitHub Actions viewer component",
|
|
"props": {
|
|
"owner": "",
|
|
"repo": "",
|
|
"workflow": "",
|
|
"token": ""
|
|
},
|
|
"layout": {
|
|
"type": "Card",
|
|
"children": [
|
|
{
|
|
"type": "CardHeader",
|
|
"children": [
|
|
{ "type": "CardTitle", "props": { "text": "GitHub Actions" } }
|
|
]
|
|
},
|
|
{
|
|
"type": "CardContent",
|
|
"children": [
|
|
{ "type": "RunFilters", "props": {} },
|
|
{ "type": "RunList", "props": {} }
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"scripts": {
|
|
"init": "init.initialize",
|
|
"fetchRuns": "fetch_runs.fetchRuns",
|
|
"filterRuns": "filter.filterRuns"
|
|
}
|
|
},
|
|
{
|
|
"id": "run_list",
|
|
"name": "RunList",
|
|
"type": "run_list",
|
|
"description": "List of workflow runs with status badges",
|
|
"props": {
|
|
"runs": [],
|
|
"loading": false,
|
|
"onSelect": "selectRun"
|
|
},
|
|
"layout": {
|
|
"type": "Stack",
|
|
"props": { "spacing": 2 },
|
|
"children": []
|
|
}
|
|
},
|
|
{
|
|
"id": "run_details",
|
|
"name": "RunDetails",
|
|
"type": "run_details",
|
|
"description": "Detailed view of a single workflow run",
|
|
"props": {
|
|
"run": null,
|
|
"jobs": [],
|
|
"logs": ""
|
|
},
|
|
"layout": {
|
|
"type": "Card",
|
|
"children": [
|
|
{
|
|
"type": "CardHeader",
|
|
"children": [
|
|
{ "type": "CardTitle", "props": { "text": "Run Details" } }
|
|
]
|
|
},
|
|
{
|
|
"type": "CardContent",
|
|
"children": [
|
|
{ "type": "StatusBadge", "props": {} },
|
|
{ "type": "JobsList", "props": {} },
|
|
{ "type": "LogViewer", "props": {} }
|
|
]
|
|
}
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"id": "analysis_panel",
|
|
"name": "AnalysisPanel",
|
|
"type": "analysis_panel",
|
|
"description": "Statistics and analysis of workflow runs",
|
|
"props": {
|
|
"stats": {},
|
|
"timeRange": "7d"
|
|
},
|
|
"layout": {
|
|
"type": "Card",
|
|
"children": [
|
|
{
|
|
"type": "CardHeader",
|
|
"children": [
|
|
{ "type": "CardTitle", "props": { "text": "Run Analysis" } }
|
|
]
|
|
},
|
|
{
|
|
"type": "CardContent",
|
|
"children": [
|
|
{ "type": "StatGrid", "props": {} },
|
|
{ "type": "SuccessRateChart", "props": {} }
|
|
]
|
|
}
|
|
]
|
|
},
|
|
"scripts": {
|
|
"calculate": "analyze.calculateStats"
|
|
}
|
|
},
|
|
{
|
|
"id": "run_filters",
|
|
"name": "RunFilters",
|
|
"type": "run_filters",
|
|
"description": "Filter controls for workflow runs",
|
|
"props": {
|
|
"status": "all",
|
|
"branch": "",
|
|
"dateRange": "7d"
|
|
},
|
|
"layout": {
|
|
"type": "Stack",
|
|
"props": { "direction": "row", "spacing": 2 },
|
|
"children": [
|
|
{
|
|
"type": "Select",
|
|
"props": {
|
|
"label": "Status",
|
|
"name": "status",
|
|
"options": [
|
|
{ "value": "all", "label": "All" },
|
|
{ "value": "success", "label": "Success" },
|
|
{ "value": "failure", "label": "Failure" },
|
|
{ "value": "pending", "label": "Pending" }
|
|
]
|
|
}
|
|
},
|
|
{
|
|
"type": "Input",
|
|
"props": {
|
|
"label": "Branch",
|
|
"name": "branch",
|
|
"placeholder": "main"
|
|
}
|
|
},
|
|
{
|
|
"type": "Select",
|
|
"props": {
|
|
"label": "Time Range",
|
|
"name": "dateRange",
|
|
"options": [
|
|
{ "value": "1d", "label": "Last 24 hours" },
|
|
{ "value": "7d", "label": "Last 7 days" },
|
|
{ "value": "30d", "label": "Last 30 days" }
|
|
]
|
|
}
|
|
}
|
|
]
|
|
},
|
|
"scripts": {
|
|
"onChange": "filter.applyFilters"
|
|
}
|
|
}
|
|
]
|