yumoqing d6e7309e85 fix(hermes-web-cli): correct new_session.ui implementation
- Change service_id field uitype from 'select' to 'code' (bricks has no select type)
- Create hermes_services/list/index.dspy endpoint to provide service list data for code component
- Use Form's built-in submit/cancel buttons instead of manual Button widgets
- Add sessions.json CRUD definition for session management
- Ensure proper data format for code component: {"value": "id", "text": "name"}
2026-04-22 13:13:36 +08:00

33 lines
977 B
Plaintext

# Get hermes_services list for code dropdown
# This .dspy file uses functions released by load_hermes_web_cli()
def main():
"""Get hermes_services records for code component dropdown."""
try:
# Use the function provided by hermes-web-cli module
services = get_all_services()
# Format for code component (value, text pairs)
result = []
for service in services:
result.append({
"value": str(service.get('id')),
"text": service.get('name', f"Service {service.get('id')}")
})
return {
"status": "success",
"data": result,
"total": len(result)
}
except Exception as e:
return {
"status": "error",
"message": str(e),
"data": [],
"total": 0
}
# Execute and return JSON response
result = main()
print(json.dumps(result, ensure_ascii=False))