Files
metabuilder/packages/github_tools/scripts/functions.json
johndoe6345789 8c8f8cce8a feat: Add JSON Script Example and Lua Test Framework
- Created a new package for JSON Script Example with comprehensive examples demonstrating the full JSON script specification.
- Added permissions for viewing, executing, and modifying examples in the JSON Script Example package.
- Implemented functions for various expressions, statements, operators, and control flow in the JSON Script Example.
- Developed a Storybook configuration for showcasing JSON Script Examples with interactive components.
- Established a styles token file for consistent styling across the JSON Script Example package.
- Introduced a new Lua Test Framework package with components for running and displaying test results.
- Defined permissions for executing and viewing Lua test results, along with configuration and debugging capabilities.
- Implemented a comprehensive set of functions for the Lua testing framework, including assertions and mocks.
- Created Storybook stories for the Lua Test Framework to demonstrate the test runner and results display.
- Added a styles token file for the Lua Test Framework to ensure a cohesive design.
2026-01-02 16:42:39 +00:00

157 lines
4.1 KiB
JSON

{
"$schema": "https://metabuilder.dev/schemas/json-script.schema.json",
"schemaVersion": "2.2.0",
"package": "github_tools",
"description": "GitHub Tools functions for fetching runs, analyzing data, and filtering results",
"functions": [
{
"id": "init_initialize",
"name": "initialize",
"exported": true,
"description": "Initialize the GitHub Tools package with configuration",
"category": "initialization",
"luaScript": "init.lua"
},
{
"id": "fetch_runs_fetchRuns",
"name": "fetchRuns",
"exported": true,
"description": "Fetch workflow runs from GitHub API",
"category": "api",
"luaScript": "fetch_runs.lua"
},
{
"id": "fetch_runs_fetchJobs",
"name": "fetchJobs",
"exported": true,
"description": "Fetch jobs for a specific workflow run",
"category": "api",
"luaScript": "fetch_runs.lua"
},
{
"id": "fetch_runs_fetchLogs",
"name": "fetchLogs",
"exported": true,
"description": "Fetch logs for a specific job",
"category": "api",
"luaScript": "fetch_runs.lua"
},
{
"id": "analyze_calculateStats",
"name": "calculateStats",
"exported": true,
"description": "Calculate statistics from workflow runs",
"category": "analytics",
"luaScript": "analyze.lua"
},
{
"id": "analyze_getSuccessTrend",
"name": "getSuccessTrend",
"exported": true,
"description": "Get trend data for success rate over time",
"category": "analytics",
"luaScript": "analyze.lua"
},
{
"id": "analyze_getFailureBreakdown",
"name": "getFailureBreakdown",
"exported": true,
"description": "Get failure breakdown by type",
"category": "analytics",
"luaScript": "analyze.lua"
},
{
"id": "filter_filterRuns",
"name": "filterRuns",
"exported": true,
"description": "Apply filters to workflow runs",
"category": "filtering",
"luaScript": "filter.lua"
},
{
"id": "filter_applyFilters",
"name": "applyFilters",
"exported": true,
"description": "Apply filters from form data",
"category": "filtering",
"luaScript": "filter.lua"
},
{
"id": "filter_sortRuns",
"name": "sortRuns",
"exported": true,
"description": "Sort runs by field",
"category": "filtering",
"luaScript": "filter.lua"
},
{
"id": "status_getStatusColor",
"name": "getStatusColor",
"exported": true,
"description": "Get color for run status",
"category": "display",
"luaScript": "status.lua"
},
{
"id": "status_getStatusIcon",
"name": "getStatusIcon",
"exported": true,
"description": "Get icon name for run status",
"category": "display",
"luaScript": "status.lua"
},
{
"id": "status_getStatusLabel",
"name": "getStatusLabel",
"exported": true,
"description": "Get human-readable status label",
"category": "display",
"luaScript": "status.lua"
},
{
"id": "status_renderBadge",
"name": "renderBadge",
"exported": true,
"description": "Render status badge component",
"category": "display",
"luaScript": "status.lua"
},
{
"id": "status_formatDuration",
"name": "formatDuration",
"exported": true,
"description": "Format duration in human-readable form",
"category": "display",
"luaScript": "status.lua"
},
{
"id": "status_formatRelativeTime",
"name": "formatRelativeTime",
"exported": true,
"description": "Format timestamp as relative time",
"category": "display",
"luaScript": "status.lua"
}
],
"exports": {
"functions": [
"initialize",
"fetchRuns",
"fetchJobs",
"fetchLogs",
"calculateStats",
"getSuccessTrend",
"getFailureBreakdown",
"filterRuns",
"applyFilters",
"sortRuns",
"getStatusColor",
"getStatusIcon",
"getStatusLabel",
"renderBadge",
"formatDuration",
"formatRelativeTime"
]
}
}